diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d0182c6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/db.lock diff --git a/.vs/AvaliacaoMinutoSeguros/v15/.suo b/.vs/AvaliacaoMinutoSeguros/v15/.suo new file mode 100644 index 0000000..ab26ef5 Binary files /dev/null and b/.vs/AvaliacaoMinutoSeguros/v15/.suo differ diff --git a/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide b/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide new file mode 100644 index 0000000..8d35eba Binary files /dev/null and b/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide differ diff --git a/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide-shm b/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide-shm new file mode 100644 index 0000000..fe9ac28 Binary files /dev/null and b/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide-shm differ diff --git a/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide-wal b/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide-wal new file mode 100644 index 0000000..0c3c6a3 Binary files /dev/null and b/.vs/AvaliacaoMinutoSeguros/v15/Server/sqlite3/storage.ide-wal differ diff --git a/.vs/config/applicationhost.config b/.vs/config/applicationhost.config new file mode 100644 index 0000000..91933aa --- /dev/null +++ b/.vs/config/applicationhost.config @@ -0,0 +1,1033 @@ + + + + + + + +
+
+
+
+
+
+
+
+ + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+ +
+
+ +
+
+
+ + +
+
+
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/AvaliacaoMinutoSeguros.App/App.config b/AvaliacaoMinutoSeguros.App/App.config new file mode 100644 index 0000000..47a5e89 --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/App.config @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.App/AvaliacaoMinutoSeguros.App.csproj b/AvaliacaoMinutoSeguros.App/AvaliacaoMinutoSeguros.App.csproj new file mode 100644 index 0000000..eddb81a --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/AvaliacaoMinutoSeguros.App.csproj @@ -0,0 +1,75 @@ + + + + + Debug + AnyCPU + {F9250B32-FA0B-48B4-B012-279E49BB7147} + Exe + AvaliacaoMinutoSeguros.App + AvaliacaoMinutoSeguros.App + v4.7.2 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\AutoMapper.9.0.0\lib\net461\AutoMapper.dll + + + ..\packages\SimpleInjector.4.9.1\lib\net45\SimpleInjector.dll + + + + + + + + + + + + + + + + + + + + + + {DB6A7603-577A-40ED-9349-4D1DDEEF2731} + AvaliacaoMinutoSeguros.Business + + + {9a75e813-824f-4e5e-be63-7a8007961367} + AvaliacaoMinutoSeguros.Domain + + + {545b4adb-958f-48de-8afe-72b7e53a2371} + AvaliacaoMinutoSeguros.Infra.IoC + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.App/Program.cs b/AvaliacaoMinutoSeguros.App/Program.cs new file mode 100644 index 0000000..c19357f --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/Program.cs @@ -0,0 +1,58 @@ +using AutoMapper; +using AvaliacaoMinutoSeguros.Business.AutoMapper; +using AvaliacaoMinutoSeguros.Domain.Interfaces.Servicos; +using AvaliacaoMinutoSeguros.Infra.IoC; +using System; +using System.Configuration; + +namespace AvaliacaoMinutoSeguros.App +{ + /// + /// Criado por: Marconcilio Souza + /// Linkedin: + /// + class Program + { + static void Main(string[] args) + { + // registra o contaner de IoC + var iocInjector = new SimpleInjectorContainer(); + //registra o auto map + var mapperConfiguration = AutoMapperConfig.RegisterMappings(); + IMapper mapper = mapperConfiguration.CreateMapper(); + + string uri = ConfigurationManager.AppSettings["Uri"]; + + var servicoRssFeed = iocInjector.container.GetInstance(); + + var rssFeedViewModel = servicoRssFeed.ProcessarRssFeed(uri, mapper); + + System.Console.WriteLine($"Dados do blog: { rssFeedViewModel.Title }"); + System.Console.WriteLine($"Ultima alteração: { rssFeedViewModel.LastBuildDate }"); + Console.WriteLine(); + + foreach (var item in rssFeedViewModel.Items) + { + System.Console.WriteLine($"Título do blog: { item.Title }"); + System.Console.WriteLine($"Criado por: { item.Creator }"); + System.Console.WriteLine($"Publicado em: { item.PubDate }"); + Console.WriteLine(); + + Console.WriteLine("As 10 dez principais palavras abordadas nesses tópicos são:"); + var index = 1; + foreach (var palavra in item.Palavras) + { + Console.WriteLine($"{ index }ª) { palavra.Palavra.ToUpper() }, o número de vezes que ela apareceu foi: { palavra.TotalVezesUsuada }!"); + index++; + } + + Console.WriteLine($"Total de palavras usuadas no blog { item.TotalPalavrasBlog } palavras"); + + Console.WriteLine(); + } + + + Console.ReadKey(); + } + } +} diff --git a/AvaliacaoMinutoSeguros.App/Properties/AssemblyInfo.cs b/AvaliacaoMinutoSeguros.App/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..db458c4 --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AvaliacaoMinutoSeguros.App")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AvaliacaoMinutoSeguros.App")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("f9250b32-fa0b-48b4-b012-279e49bb7147")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.dll b/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.dll new file mode 100644 index 0000000..79121bd Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.dll differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.pdb b/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.pdb new file mode 100644 index 0000000..a752d87 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.xml b/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.xml new file mode 100644 index 0000000..21057bd --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/bin/Debug/AutoMapper.xml @@ -0,0 +1,1754 @@ + + + + AutoMapper + + + + + Add Action called against the IConfigurationProvider before it gets sealed + + + + + Add an action to be called when validating the configuration. + + the validation callback + + + + Allow the same map to exist in different profiles. + The default is to throw an exception, true means the maps are merged. + + + + + How many levels deep should AutoMapper try to inline the execution plan for child classes. + See the docs for details. + + + + + Auto map to this destination type from the specified source type. + Discovered during scanning assembly scanning for configuration when calling + + + + + If set to true, construct the destination object using the service locator. + + + + + For self-referential types, limit recurse depth. + + + + + If set to true, preserve object identity. Useful for circular references. + + + + + If set to true, disable constructor validation. + + + + + If set to true, include this configuration in all derived types' maps. + + + + + Skip normal member mapping and convert using a instantiated during mapping. + + + + + Ignore this member for configuration validation and skip during mapping. + + + Must be used in combination with + + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + Must be used in combination with + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + + Must be used in combination with + + + + + Substitute a custom value when the source member resolves as null + + + Must be used in combination with + + + + + Value to use if source value is null + + + + + Specify the source member to map from. Can only reference a member on the type + + + Must be used in combination with + + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + Must be used in combination with + + + + + Specify a value converter type to convert from the matching source member to the destination member + Use with to specify a separate source member to supply to the value converter + + + Must be used in combination with + + + + + type + + + + + Map destination member using a custom value resolver. + Use with to specify an type. + + + Must be used in combination with + + + + + or type + + + + + Contains profile-specific configuration + + + + + Source extension methods included for search + + + + + Specify which properties should be mapped. + By default only public properties are mapped. + + + + + Specify which fields should be mapped. + By default only public fields are mapped. + + + + + Specify which methods, of those that are eligible (public, parameterless, and non-static or extension methods), should be mapped. + By default all eligible methods are mapped. + + + + + Specify which constructors should be considered for the destination objects. + By default all constructors are considered. + + + + + Contains member configuration relating to source members + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Member maps with default values. Used in dynamic/dictionary scenarios when source/destination members do not exist. + + + + + Gets the feature of type . + + The type of the feature. + The feature or null if feature not exists. + + + + Add or update the feature. Existing feature of the same type will be replaced. + + The feature. + + + + Get all configured type maps created + + All configured type maps + + + + Find the for the configured source and destination type + + Configured source type + Configured destination type + Type map configuration + + + + Find the for the configured type pair + + Type pair + Type map configuration + + + + Find the for the configured source and destination type + + Source type + Destination type + Type map configuration + + + + Resolve the for the configured source and destination type, checking parent types + + Configured source type + Configured destination type + Type map configuration + + + + Resolve the for the configured type pair, checking parent types + + Type pair + Type map configuration + + + + Dry run all configured type maps and throw for each problem + + + + + Dry run single type map + + Type map to check + + + + Dry run all type maps in given profile + + Profile name of type maps to test + + + + Dry run all type maps in given profile + + Profile type + + + + Get all configured mappers + + List of mappers + + + + Gets the features collection. + + The feature colection. + + + + Find a matching object mapper. + + the types to match + the matching mapper or null + + + + Factory method to create formatters, resolvers and type converters + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Create a mapper instance based on this configuration. Mapper instances are lightweight and can be created as needed. + + The mapper instance + + + + Create a mapper instance with the specified service constructor to be used for resolvers and type converters. + + Service factory to create services + The mapper instance + + + + Compile all underlying mapping expressions to cached delegates. + Use if you want AutoMapper to compile all mappings up front instead of deferring expression compilation for each first map. + + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + the runtime type of the source object + the runtime type of the destination object + the execution plan + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + The source/destination map request + the execution plan + + + + Map constructor parameter from member expression + + Member type + Member expression + + + + Map constructor parameter from custom func that has access to + + Not used for LINQ projection (ProjectTo) + Custom func + + + + Ignore this member for validation and skip during mapping + + + + + Execute a mapping from the source object to a new destination object. + The source type is inferred from the source object. + + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to a new destination object. + + Source type to use, regardless of the runtime type + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Source type to use + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to the existing destination object. + + Source type to use + Destination type + Source object to map from + Destination object to map into + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to the existing destination object with supplied mapping options. + + Source type to use + Destination type + Source object to map from + Destination object to map into + Mapping options + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to a new destination object with explicit objects + + Source object to map from + Source type to use + Destination type to create + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with explicit objects and supplied mapping options. + + Source object to map from + Source type to use + Destination type to create + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to existing destination object with explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapped destination object, same instance as the object + + + + Execute a mapping from the source object to existing destination object with supplied mapping options and explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapping options + Mapped destination object, same instance as the object + + + + Configuration provider for performing maps + + + + + Factory method for creating runtime instances of converters, resolvers etc. + + + + + Project the input queryable. + + Projections are only calculated once and cached + Destination type + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Project the input queryable. + + Destination type to map to + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Add an existing profile + + Profile to add + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add profiles contained in an IEnumerable + + IEnumerable of Profile + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Supply a factory method callback for creating resolvers and type converters + + Factory method + + + + Create a named profile with the supplied configuration + + Profile name, must be unique + Profile configuration + + + + Get the features collection. + + + + + Object mappers + + + + + Advance Configuration + + + + + Custom mapping action + + Source type + Destination type + + + + Implementors can modify both the source and destination objects + + Source object + Destination object + Resolution context + + + + Mapping configuration options for non-generic maps + + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the names of child object properties to map to the destination + + + + + Create a type mapping from the destination to the source type, using the destination members as validation. + + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize individual members + + Name of the member + Callback for configuring member + Itself + + + + Mapping configuration options + + Source type + Destination type + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the child objects to map to the destination + + + + + Customize configuration for a path inside the destination object. + + Expression to the destination sub object + Callback for member options + Itself + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize configuration for individual member + + Expression to the top-level destination member. This must be a member on the TDestination type + Callback for member options + Itself + + + + Customize configuration for individual member. Used when the name isn't known at compile-time + + Destination member name + Callback for member options + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + Destination type to use + + + + Customize configuration for an individual source member + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Transformation expression + Itself + + + + Create a type mapping from the destination to the source type, using the members as validation + + Itself + + + + Common mapping configuration options between generic and non-generic mapping configuration + + Source type + Destination type + Concrete return type for fluent interface + + + + Construct the destination object using the service locator + + Itself + + + + For self-referential types, limit recurse depth. + Enables PreserveReferences. + + Number of levels to limit to + Itself + + + + Preserve object identity. Useful for circular references. + + Itself + + + + Disable constructor validation. During mapping this map is used against an existing destination object and never constructed itself. + + Itself + + + + Value transformers, typically configured through explicit or extenstion methods. + + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action before member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action after member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Specify which member list to validate + + Member list to validate + Itself + + + + Include this configuration in all derived types' maps. Works by scanning all type maps for matches during configuration. + + Itself + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + + + + + Customize configuration for an individual source member. Member name not known until runtime + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Ignores all properties that have either a private or protected setter, forcing the mapper to respect encapsulation (note: order matters, so place this before explicit configuration of any properties with an inaccessible setter) + + Itself + + + + When using ReverseMap, ignores all properties that have either a private or protected setter, keeping the reverse mapping consistent with the forward mapping (note: properties with an inaccessible setter may still be mapped unless IgnoreAllPropertiesWithAnInaccessibleSetter is also used) + + Itself + + + + Supply a custom instantiation expression for the destination type + + Expression to create the destination type given the source object + Itself + + + + Supply a custom instantiation function for the destination type, based on the entire resolution context + + Not used for LINQ projection (ProjectTo) + Callback to create the destination type given the current resolution context + Itself + + + + Customize configuration for individual constructor parameter + + Constructor parameter name + Options + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + + + + + Skip normal member mapping and convert using a instantiated during mapping + Use this method if you need to specify the converter type at runtime + + Type converter type + + + + Skip member mapping and use a custom expression to convert to the destination type + + Callback to convert from source type to destination type + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, including destination object + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, with source, destination and context + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter instance + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter type + + + + Options for a single map operation + + + + + Construct services using this callback. Use this for child/nested containers + + + + + + Add context items to be accessed at map time inside an or + + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Member configuration options + + Source type for this member + Type for this member + Destination type for this map + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + + + Substitute a custom value when the source member resolves as null + + Value to use + + + + Map destination member using a custom value resolver + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom member value resolver supplied with a source member + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + + + + Map destination member using a custom member value resolver supplied from a source member name + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + Source member name + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Map destination member using a custom function. Access both the source and destination object. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, and destination member. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, destination member, and context. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom expression. Used in LINQ projection (ProjectTo). + + Member type of the source member to use + Map expression + + + + Specify the source member to map from. Can only reference a member on the type + + Property name referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Allow this member to be null. This prevents generating a check condition for it. + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + Mapping order value + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + + + Conditionally map this member against the source, destination, source and destination members + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object and the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object, the destination object, and the current resolution context + + + + Ignore this member for LINQ projections unless explicitly expanded during projection + + + + + The destination member being configured. + + + + + Apply a transformation function after any resolved destination member value with the given type + + Transformation expression + + + + Specify a value converter to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + + + + Specify a value converter to convert from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member to supply to the value converter + + + + Specify a value converter to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + + + + Specify a value converter instance from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member name to supply to the value converter + + + + Configuration options for an individual member + + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + Member to supply to value resolver + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Specify a value converter type to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + + + + Specify a value converter type to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Destination member type + Value converter instance + Source member name to supply to the value converter + + + + Defines a naming convention strategy + + + + + Regular expression on how to tokenize a member + + + + + Mapping execution strategy, as a chain of responsibility + + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Builds a mapping expression equivalent to the base Map method + + + + + Source parameter + Destination parameter + ResolutionContext parameter + Map expression + + + + Base class for simple object mappers that don't want to use expressions. + + type of the source + type of the destination + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Performs conversion from source to destination type + + Source object + Destination object + The compile time type of the source object + The compile time type of the destination object + Resolution context + Destination object + + + + Member configuration options + + Source type for this member + Destination type for this map + Type for this member + + + + Specify the source member to map from. Can only reference a member on the type + Any null reference exceptions in this expression will be ignored (similar to flattening behavior) + + Member type of the source member to use + Expression referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Configuration for profile-specific maps + + + + + Disable constructor mapping. Use this if you don't intend to have AutoMapper try to map to constructors + + + + + Creates a mapping configuration from the type to the type + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the type to the type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Create a mapping configuration from the source type to the destination type. + Use this method when the source and destination type are known at runtime and not compile time. + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the source type to the destination type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Clear the list of recognized prefixes. + + + + + Recognize a list of prefixes to be removed from source member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from source member names when matching + + List of postfixes + + + + Provide an alias for a member name when matching source member names + + Original member name + Alias to match against + + + + Provide a new value for a part of a members name + + Original member value + New member value + + + + Recognize a list of prefixes to be removed from destination member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from destination member names when matching + + List of postfixes + + + + Add a property name to globally ignore. Matches against the beginning of the property names. + + Property name to match against + + + + Allow null destination values. If false, destination objects will be created for deep object graphs. Default true. + + + + + Allow null destination collections. If true, null source collections result in null destination collections. Default false. + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Naming convention for source members + + + + + Naming convention for destination members + + + + + Specify common configuration for all type maps. + + configuration callback + + + + Customize configuration for all members across all maps + + Condition + Callback for member options. Use the property map for conditional maps. + + + + Include extension methods against source members for matching destination members to. Default source extension methods from + + Static type that contains extension methods + + + + Value transformers. Modify the list directly or use + + + + + Source member configuration options + + + + + Ignore this member when validating source members, MemberList.Source. + Does not affect validation for the default case, MemberList.Destination. + + + + + Converts source type to destination type instead of normal member mapping + + Source type + Destination type + + + + Performs conversion from source to destination type + + Source object + Destination object + Resolution context + Destination object + + + + Converts a source member value to a destination member value + + Source member type + Destination member type + + + + Perform conversion from source member value to destination member value + + Source member object + Resolution context + Destination member value + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Source member + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Member list to check for configuration validation + + + + + Check that all destination members are mapped + + + + + Check that all source members are mapped + + + + + Check neither source nor destination members, skipping validation + + + + + Provides a named configuration for maps. Naming conventions become scoped per profile. + + + + + Queryable extensions for AutoMapper + + + + + Maps a queryable expression of a source type to a queryable expression of a destination type + + Source type + Destination type + Source queryable + Destination queryable + + Mapped destination queryable + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Expression to project into + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Explicit members to expand + Expression to project into + + + + Projects the source type to the destination type given the mapping configuration + + Destination type to map to + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Expression visitor for making member access null-safe. + + + NullSafeQueryRewriter is copied from the NeinLinq project, licensed under the MIT license. + Copyright (c) 2014-2018 Axel Heer. + See https://github.com/axelheer/nein-linq/blob/master/src/NeinLinq/NullsafeQueryRewriter.cs + + + + + + + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Context information regarding resolution of a destination value + + + + + Mapping operation options + + + + + Context items from + + + + + Current mapper + + + + + Instance cache for resolving circular references + + + + + Instance cache for resolving keeping track of depth + + + + + Contains cached reflection information for easy retrieval + + + + + Main configuration object holding all mapping configuration for a source and destination type + + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Value transformer list + Transformation expression + + + diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.exe b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.exe new file mode 100644 index 0000000..2633a0d Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.exe differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.exe.config b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.exe.config new file mode 100644 index 0000000..47a5e89 --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.exe.config @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.pdb b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.pdb new file mode 100644 index 0000000..0b9eb50 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.App.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Business.dll b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Business.dll new file mode 100644 index 0000000..42e4821 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Business.dll differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb new file mode 100644 index 0000000..75feb9a Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll new file mode 100644 index 0000000..6b03ebf Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb new file mode 100644 index 0000000..b333844 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll new file mode 100644 index 0000000..3e685d4 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb new file mode 100644 index 0000000..aa7762b Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll new file mode 100644 index 0000000..d8d670f Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb new file mode 100644 index 0000000..dcdb93b Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll new file mode 100644 index 0000000..2d41c6a Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb new file mode 100644 index 0000000..a82075a Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/SimpleInjector.dll b/AvaliacaoMinutoSeguros.App/bin/Debug/SimpleInjector.dll new file mode 100644 index 0000000..15cb0cd Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/bin/Debug/SimpleInjector.dll differ diff --git a/AvaliacaoMinutoSeguros.App/bin/Debug/SimpleInjector.xml b/AvaliacaoMinutoSeguros.App/bin/Debug/SimpleInjector.xml new file mode 100644 index 0000000..4383e73 --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/bin/Debug/SimpleInjector.xml @@ -0,0 +1,6206 @@ + + + + SimpleInjector + + + + + The standard exception thrown when a container has an error in resolving an object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + + Extension methods for enable advanced scenarios. + + + + + Determines whether the specified container is locked making any new registrations. The container + is automatically locked when GetInstance is called for the + first time. + + The container. + + true if the specified container is locked; otherwise, false. + + Thrown when is null. + + + Determines whether the specified container is currently verifying its configuration. + The container. + true if the specified container is verifying; otherwise, false. + Thrown when is null. + + + + Retrieves an item from the container stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The container. + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Stores an item by the given in the container. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The container. + The key of the item to insert or override. + The actual item. May be null. + Thrown when either or + is a null reference (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The container. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either , + or is a null reference (Nothing in VB). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Common base class for Simple Injector API classes. + + + + + + + + + + + + + Gets the of the current instance. + The instance that represents the exact runtime + type of the current instance. + + + Deprecation extensions. + + + + This interface method has been removed. Please call GetInstanceProducerFor instead. + + The behavior. + The consumer. + Throws an exception. + + + + This interface method has been removed. Please call SelectProperty(PropertyInfo) instead. + + The behavior. + Type of the abstraction that is requested. + The property to check. + True when the property should be injected. + + + + Defines the container's behavior for finding a suitable constructor for the creation of a type. + Set the ConstructorResolutionBehavior + property of the container's property to change the default behavior + of the container. + + + + + Gets the given 's constructor that can be used by the + container to create that instance. + + Type of the implementation to find a suitable constructor for. + + The . This method never returns null. + + Thrown when no suitable constructor could be found. + + + + Defines the container's behavior for building an expression tree for an dependency to inject, based on + the information of the consuming type the dependency is injected into. + Set the ConstructorInjectionBehavior + property of the container's property to change the default behavior + of the container. + + + + Verifies the specified . + Contextual information about the consumer where the built dependency is + injected into. + + Thrown when the type of the target supplied with + the supplied cannot be used for auto wiring. + Thrown when the supplied argument is a null reference. + + + + Gets the for the + Target of the supplied . + + Contextual information about the consumer where the built dependency is + injected into. + The indication whether the method should return null or throw + an exception when the type is not registered. + An that describes the intend of creating that + Target. This method never returns null. + Thrown when the argument is a null reference. + + + + Defines the container's behavior for selecting the lifestyle for a registration in case no lifestyle + is explicitly supplied. + Set the LifestyleSelectionBehavior + property of the container's property to change the default behavior + of the container. By default, when no lifestyle is explicitly supplied, the + Transient lifestyle is used. + + + + Selects the lifestyle based on the supplied type information. + Type of the implementation to that is registered. + The suited for the given type. + Thrown when either one of the arguments is a null reference. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterResolveInterceptor + method that takes this delegate. This type contains contextual information about a resolved type and it + allows the user to examine the given instance to decide whether the + should be applied or not. + + + + + Gets the that is responsible for the initialization of the created + instance. + + The or null (Nothing in VB) when the instance producer is + unknown. + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterInitializer + overload that takes this delegate. This type contains contextual information about the creation and it + allows the user to examine the given instance to decide whether the instance should be initialized or + not. + + + + + Gets a null reference. This property has been deprecated. + + The null (Nothing in VB). + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + Contains data that can be used to initialize a created instance. This data includes the actual + created and the information about the created instance. + + + + Initializes a new instance of the struct. + The that contains contextual information + about the created instance. + The created instance. + + + Gets the with contextual information about the + created instance. + The . + + + Gets the created instance. + The created instance. + + + + + + + + + + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + True if a and b are equal; otherwise, false. + + + + Indicates whether the values of two specified objects are + not equal. + + The first object to compare. + The second object to compare. + True if a and b are not equal; otherwise, false. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + + + Initializes a new instance of the struct. + The scope factory. + The container. + + + Gets the lazily initialized Scope of the current LazyScope instance. + The current Scope or null. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + Implementation type. + + + + Initializes a new instance of the + struct. + The registration. + + + + Gets the lazily initialized instance for the of the current LazyScopedRegistration. + + The scope that is used to retrieve the instance. + The cached instance. + + + + Defines the container's behavior for selecting properties to inject during the creation of a type. + Set the PropertySelectionBehavior + property of the container's property to change the default behavior + of the container. By default, no properties will be injected by the container. + + + + + Determines whether a property should be injected by the container upon creation of its type. + + + The type being created for which the property should be injected. Note that this might a + different type than the type on which the property is declared (which might be a base class). + The property to check. + True when the property should be injected. + + + + A known relationship defines a relationship between two types. The Diagnostics Debug View uses this + information to spot possible misconfigurations. + + + + Initializes a new instance of the class. + The implementation type of the parent type. + The lifestyle of the parent type. + The type that the parent depends on (it is injected into the parent). + + + Gets the implementation type of the parent type of the relationship. + The implementation type of the parent type of the relationship. + + + Gets the lifestyle of the parent type of the relationship. + The lifestyle of the parent type of the relationship. + + + Gets the type that the parent depends on (it is injected into the parent). + The type that the parent depends on. + + + + + + + + + + + + + The container. Create an instance of this type for registration of dependencies. + + + + Thread-safety: + Resolving instances can be done safely from multiple threads concurrently, but registration needs to + be done from one single thread. + + + It is therefore safe to call , , + GetService, and + and anything related to resolving instances from multiple thread + concurrently. It is however unsafe to call + RegisterXXX, + , , , + or anything related to registering from multiple threads concurrently. + + + Common Container methods specific for the full .NET version of Simple Injector. + Methods for batch registration. + Methods for registration of collections. + Methods for conditional registrations. + + These conditional registration methods lack a Func{PredicateContext, TService} predicate + method. This is deliberate, because would force the factory to be registered as transient, forcing + the whole parent structure to become transient as well. Besides this, it would blind the diagnostic + system, because it will stop at the delegate, instead of being able to analyze the object graph as + a whole. + + Methods for registration. + Methods for registration of decorators. + Methods for resolving instances. + Methods for verifying the container. + + + Initializes a new instance of the class. + + + Gets the container options. + The instance for this container. + + + Gets the container scope that that manages the lifetime of singletons and other + container-controlled instances. Use this property to register actions that need to be called + and instances that need to be disposed when the container gets disposed. + The instance for this container. + + + + Gets a value indicating whether the container is currently being verified on the current thread. + + True in case the container is currently being verified on the current thread; otherwise + false. + + + + Gets the intermediate lifestyle that forwards CreateRegistration calls to the lifestyle that is + returned from the registered container.Options.LifestyleSelectionBehavior. + + + + + Returns an array with the current registrations. This list contains all explicitly registered + types, and all implicitly registered instances. Implicit registrations are all concrete + unregistered types that have been requested, all types that have been resolved using + unregistered type resolution (using the event), and + requested unregistered collections. Note that the result of this method may change over time, + because of these implicit registrations. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + + + + Returns an array with the current registrations for root objects. Root objects are registrations + that are in the root of the object graph, meaning that no other registration is depending on it. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + This list contains the root objects of all explicitly registered types, and all implicitly + registered instances. Implicit registrations are all concrete unregistered types that have been + requested, all types that have been resolved using unregistered type resolution (using the + event), and requested unregistered collections. Note that + the result of this method may change over time, because of these implicit registrations. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + Thrown when this method is called before + has been successfully called. + + + Releases all instances that are cached by the object. + + + Prevents any new registrations to be made to the container. + + + Releases all instances that are cached by the object. + True for a normal dispose operation; false to finalize the handle. + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + An assembly that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the transient lifestyle. + + The definition of the open generic type. + A list types to be registered. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the given . + + The definition of the open generic type. + A list types to be registered. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + assemblies = new[] { typeof(ILogger).Assembly }; + var types = container.GetTypesToRegister(assemblies) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ( + typeof(ILogger).Assembly, + typeof(FileLogger).Assembly) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Container.Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete types that are located in the supplied + and implement or inherit from the supplied and match the specified + . can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var options = new TypesToRegisterOptions { IncludeGenericTypeDefinitions: true }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies, options) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + The options. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Registers a dynamic (container-uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + + The container-uncontrolled collection to register. + + + Thrown when this container instance is locked and can not be altered, or when a + for has already + been registered. + + + Thrown when is a null reference. + + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when and + are not a generic type or when + is a partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of the type returned from + will be returned every time a + is requested and where the supplied + returns true. The instance is cached according to the supplied + . Both the and + will only be evaluated a finite number of times; + they unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + A factory that allows building Type objects that define the + implementation type to inject, based on the given contextual information. The delegate is allowed + to return (partially) open-generic types. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the registration can be applied for + the requested service type. This predicate can be used to build a fallback mechanism where + multiple registrations for the same service type are made. + Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is a + partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + is requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is open generic or + is not assignable to . + + Thrown when this container instance is locked and can not be altered. + + + + + Occurs when an instance of a type is requested that has not been registered explicitly, allowing + resolution of unregistered types before the container tries to create the type. + + + + The event is called by the container every time an + unregistered type is requested for the first time, allowing a developer to do unregistered type + resolution. By calling the + Register method on the + , a , or + delegate can be registered allowing the container to retrieve + instances of the requested type. This registration is cached and it prevents the + ResolveUnregisteredType event from being called again for the same type. + + + When no registered event handled the registration of an unregistered type, the container will try + to create the type when this type is either concrete or is the + interface. Concrete types will be registered with the Transient + lifestyle and registrations will return an empty collection. When no + even handled the registration and the container could not create it, an exception is thrown. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once. While the calls to for a given type + are finite (and will in most cases happen just once), a container can call the delegate multiple + times and make parallel calls to the delegate. You must make sure that the code can be called + multiple times and is thread-safe. + + + + The following example shows the usage of the event: + + { + void Validate(T instance); + } + + // Implementation of the null object pattern. + public class EmptyValidator : IValidator + { + public void Validate(T instance) + { + // Does nothing. + } + } + + [TestMethod] + public void TestResolveUnregisteredType() + { + // Arrange + var container = new Container(); + + // Register an EmptyValidator to be returned when a IValidator is requested: + container.ResolveUnregisteredType += (sender, e) => + { + if (e.UnregisteredServiceType.IsGenericType && + e.UnregisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var validatorType = typeof(EmptyValidator<>).MakeGenericType( + e.UnregisteredServiceType.GetGenericArguments()); + + // Register the instance as singleton. + e.Register(Lifestyle.Singleton.CreateRegistration(validatorType, container)); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(EmptyValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(EmptyValidator)); + } + ]]> + + The example above registers a delegate that is raised every time an unregistered type is requested + from the container. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will request the container for a concrete EmptyValidator<T> implementation that + implements the given + UnregisteredServiceType, and + registers a delegate that will return this created instance. The e.Register call + registers the method in the container, preventing the from + being called again for the exact same service type, preventing any performance penalties. + + + Please note that given example is just an uhhmm... example. In the case of the example the + EmptyValidator<T> can be better registered using of the built-in + Register methods instead. These methods take + care of any given generic type constraint and allow the implementation to be integrated into the + container's pipeline, which allows it to be intercepted using the + event and allow any registered initializers to be + applied. + + + + + + Occurs after the creation of the of a registered type is complete (the + lifestyle has been applied), allowing the created to be wrapped, + changed, or replaced. Multiple delegates may handle the same service type. + + + + The ExpressionBuilt event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilt event, can change the + property on the + , which allows changing the way the type is constructed. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to for a + given type are finite (and will in most cases happen just once), a container can call the delegate + multiple times and make parallel calls to the delegate. You must make sure that the code can be + called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilt event: + + { + void Validate(T instance); + } + + public interface ILogger + { + void Write(string message); + } + + // Implementation of the decorator pattern. + public class MonitoringValidator : IValidator + { + private readonly IValidator validator; + private readonly ILogger logger; + + public MonitoringValidator(IValidator validator, ILogger logger) + { + this.validator = validator; + this.logger = logger; + } + + public void Validate(T instance) + { + this.logger.Write("Validating " + typeof(T).Name); + this.validator.Validate(instance); + this.logger.Write("Validated " + typeof(T).Name); + } + } + + [TestMethod] + public void TestExpressionBuilt() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + container.Register, OrderValidator>(); + container.Register, CustomerValidator>(); + + // Intercept the creation of IValidator instances and wrap them in a MonitoringValidator: + container.ExpressionBuilt += (sender, e) => + { + if (e.RegisteredServiceType.IsGenericType && + e.RegisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var decoratorType = typeof(MonitoringValidator<>) + .MakeGenericType(e.RegisteredServiceType.GetGenericArguments()); + + // Wrap the IValidator in a MonitoringValidator. + e.Expression = Expression.New(decoratorType.GetConstructors()[0], new Expression[] + { + e.Expression, + container.GetRegistration(typeof(ILogger)).BuildExpression(), + }); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(MonitoringValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(MonitoringValidator)); + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will changes the current with a new one that creates + a new MonitoringValidator<T> that takes the current validator (and an ILogger) + as an dependency. + + + Please note that given example is just an uhhmm... example. In the case of the example the + MonitoringValidator<T> is a decorator and instead of manually writing this code that + many limitations, you can use one of the built-in + RegisterDecorator methods instead. + These extension methods take care of any given generic type constraint, allow to register decorators + conditionally and allow the decorator to be integrated into the container's pipeline, which allows + it to be intercepted using the event and allow any registered + initializers to be applied. + + + + + + Occurs directly after the creation of the of a registered type is made, + but before any initializer and lifestyle specific caching + has been applied, allowing the created to be altered. Multiple delegates + may handle the same service type. + + + + The ExpressionBuilding event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilding event, can change the + property on the + , which allows changing the way the type is constructed. + + + The exact type supplied depends on the type of registration. + Registrations that explicitly supply the implementation type (such as + Register<TService, TImplementation>()) + will result in an , while registrations that take a delegate (such as + Register<TService>(Func<TService>)) + will result in an . Singletons that are passed in using their + value (RegisterInstance<TService>(TService)) + will result in an . Note that other ExpressionBuilding + registrations might have changed the + property and might have supplied an of a different type. The order in + which these events are registered might be of importance to you. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to registered ExpressionBuilding + events for a given type are finite (and will in most cases happen just once), a container can + call the delegate multiple times and make parallel calls to the delegate. You must make sure that + the code can be called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilding event: + + { + var expression = e.Expression as NewExpression; + + if (expression != null) + { + var propertiesToInject = + from property in expression.Constructor.DeclaringType.GetProperties() + where property.GetCustomAttributes(typeof(MyInjectPropertyAttribute), true).Any() + let registration = container.GetRegistration(property.PropertyType, true) + select Tuple.Create(property, registration); + + if (propertiesToInject.Any()) + { + Func[], object> injectorDelegate = + (instance, dependencies) => + { + foreach (var dependency in dependencies) + { + dependency.Item1.SetValue(instance, dependency.Item2.GetInstance(), null); + } + + return instance; + }; + + e.Expression = Expression.Convert( + Expression.Invoke( + Expression.Constant(injectorDelegate), + e.Expression, + Expression.Constant(propertiesToInject.ToArray())), + expression.Constructor.DeclaringType); + } + } + }; + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks if the type contains properties that are + decorated with the supplied MyInjectPropertyAttribute. If decorated properties are found, + the given expression is replaced with an expression that injects decorated properties. + + + + + Gets the object that allows access to methods related to registration and creation of collections. + The instance for this container. + + + This property is obsolete. Please use instead. + The instance for this container. + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that an instance of will be returned when it + is requested. The instance is cached according to the supplied . + + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a new instance of will be returned every time a + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers that an instance of will be returned when an + instance of type is requested. The instance is cached according to + the supplied . + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning transient instances of + . The delegate is expected to always return a new instance on + each call. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. This can be an open-generic type. + Thrown when is a null + references (Nothing in VB). + Thrown when represents + a type that can not be created by the container. + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that a new instance of will be returned every time a + is requested. If and + represent the same type, the type is registered by itself. + Open and closed generic types are supported. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when or + are null references (Nothing in VB). + Thrown when is + no sub type from (or the same type). + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that an instance of type will be returned when an + instance of type is requested. The instance is cached according to + the supplied . Open and closed generic types are supported. + + The interface or base type that can be used to retrieve the instances. + This can be an open-generic type. + The concrete type that will be registered. + This can be an open-generic type. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container, when either + or are open generic types, or when + is not assignable from the . + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Registers the specified delegate that allows returning instances of . + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. + The delegate that will be used for creating new instances. + Thrown when either or + are null references (Nothing in VB). + Thrown when represents an + open generic type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use the overload that accepts a delegate. + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton(Type, Func<object>). + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single concrete instance that will be constructed using constructor injection and will + be returned when this instance is requested by type . + This must be thread-safe when working in a multi-threaded + environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when + has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that the same a single instance of type will be + returned every time an type is requested. If + and represent the same + type, the type is registered by itself. must be thread-safe + when working in a multi-threaded environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + + The interface or base type that can be used to retrieve the instances. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows constructing a single instance of + . This delegate will be called at most once during the lifetime of + the application. The returned instance must be thread-safe when working in a multi-threaded + environment. + If the instance returned from implements , + the created instance will get disposed when Container.Dispose + gets called. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating this single + instance. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a + null reference. + + + + Registers that the same instance of type will be returned every + time an instance of type type is requested. If + and represent the same type, the + type is registered by itself. must be thread-safe when working + in a multi-threaded environment. Open and closed generic types are supported. + + The base type or interface to register. + This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from , or when one of them represents an open generic + type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that allows constructing a single + instance. The container will call this delegate at most once during the lifetime of the application. + + The base type or interface to register. + The delegate that will be used for creating that single instance. + Thrown when represents an open + generic type. + Thrown when either or + are null references (Nothing in + VB). + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers an delegate that runs after the creation of instances that + implement or derive from the given . Please note that only instances + that are created by the container (using constructor injection) can be initialized this way. + + The type for which the initializer will be registered. + The delegate that will be called after the instance has been + constructed and before it is returned. + + Thrown when the is a null reference. + + + Thrown when this container instance is locked and can not be altered. + + + Multiple delegates can be registered per + and multiple initializers can be applied on a created instance, + before it is returned. For instance, when registering a + for type , the delegate will be called for every instance created by + the container, which can be nice for debugging purposes. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + The following example shows the usage of the + RegisterInitializer method: + + (); + + // Configuring property injection for types that implement ICommand: + container.RegisterInitializer(command => + { + command.SendAsync = true; + }); + + // Configuring property injection for types that implement CommandBase: + container.RegisterInitializer(command => + { + command.Clock = container.GetInstance(); + }); + + // Act + var command = (ConcreteCommand)container.GetInstance(); + + // Assert + // Because ConcreteCommand implements both ICommand and CommandBase, + // both the initializers will have been executed. + Assert.IsTrue(command.SendAsync); + Assert.IsNotNull(command.Clock); + } + ]]> + + The container does not use the type information of the requested service type, but it uses the + type information of the actual implementation to find all initialized that apply for that + type. This makes it possible to have multiple initializers to be applied on a single returned + instance while keeping performance high. + + + Registered initializers will only be applied to instances that are created by the container self + (using constructor injection). Types that are newed up manually by supplying a + delegate to the container (using the + method) or registered as single instance + (using ) will not trigger initialization. + When initialization of these instances is needed, this must be done manually, as can be seen in + the following example: + commandInitializer = command => + { + initializerCallCount++; + }); + + // Configuring that initializer. + container.RegisterInitializer(commandInitializer); + + container.Register(() => + { + // Create a ConcreteCommand manually: will not be initialized. + var command = new ConcreteCommand("Data Source=.;Initial Catalog=db;"); + + // Run the initializer manually. + commandInitializer(command); + + return command; + }); + + // Act + var command = container.GetInstance(); + + // Assert + // The initializer will only be called once. + Assert.AreEqual(1, initializerCallCount); + } + ]]> + The previous example shows how a manually created instance can still be initialized. Try to + prevent creating types manually, by changing the design of those classes. If possible, create a + single public constructor that only contains dependencies that can be resolved. + + + + + + Registers an delegate that runs after the + creation of instances for which the supplied returns true. Please + note that only instances that are created by the container can be initialized this way. + + The delegate that will be called after the instance has been + constructed and before it is returned. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + Note: The is not guaranteed to be called once per registration; + when a registration's instance is requested for the first time simultaneously over multiple thread, + the predicate might be called multiple times. The caller of this method is responsible of supplying + a predicate that is thread-safe. + + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is ambiguous, + when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Act + IFoo foo = container.GetInstance(); + IBar bar = container.GetInstance(); + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + + In the example above a singleton registration is created for type FooBar and this + registration is added to the container for each interface (IFoo and IBar) that it + implements. Since both services use the same singleton registration, requesting those services + will result in the return of the same (singleton) instance. + + + events are applied to the of the + instance and are therefore applied once. + events on the other hand get applied to the Expression of the . + Since each AddRegistration gets its own instance producer (that wraps the + Registration instance), this means that the ExpressionBuilt events will be + applied for each registered service type. + + + The most practical example of this is the use of decorators using one of the + RegisterDecorator overloads (decorator registration + use the ExpressionBuilt event under the covers). Take a look at the following example: + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Registere a decorator for IBar, but not for IFoo + container.RegisterDecorator(typeof(IBar), typeof(BarDecorator)); + + // Act + var foo = container.GetInstance(); + var decorator = container.GetInstance() as BarDecorator; + var bar = decorator.DecoratedBar; + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + The example shows that the decorator gets applied to IBar but not to IFoo, but that + the decorated IBar is still the same instance as the resolved IFoo instance. + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is not a reference + type, is open generic, is ambiguous, when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . By default, a new + instance will be returned on each request (according the + Transient lifestyle), independently of the lifestyle of the + wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + + Thrown when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type or + where T is . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . Decorators can be applied to both open, closed, and + non-generic service types. By default, a new instance will be + returned on each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + The following example shows the definition of a generic ICommandHandler<T> interface, + a CustomerMovedCommandHandler implementing that interface, and a + ValidatorCommandHandlerDecorator<T> that acts as a decorator for that interface. + + { + void Handle(TCommand command); + } + + public class CustomerMovedCommand + { + [Required] + public int CustomerId { get; set; } + + [Required] + public Address Address { get; set; } + } + + public class CustomerMovedCommandHandler + : ICommandHandler + { + public void Handle(CustomerMovedCommand command) + { + // some logic + } + } + + // Decorator that validates commands before they get executed. + public class ValidatorCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly Container container; + + public ValidatorCommandHandlerDecorator( + ICommandHandler decoratedHandler, + Container container) + { + this.decoratedHandler = decoratedHandler; + this.container = container; + } + + public void Handle(TCommand command) + { + this.Validate(command); + + this.decoratedHandler.Handle(command); + } + + private void Validate(TCommand command) + { + var validationContext = + new ValidationContext(command, this.container, null); + + Validator.ValidateObject(command, validationContext); + } + } + + // Decorator that measures the time it takes to execute a command. + public class MonitoringCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly ILogger logger; + + public MonitoringCommandHandlerDecorator( + ICommandHandler decoratedHandler, + ILogger logger) + { + this.decoratedHandler = decoratedHandler; + this.logger = logger; + } + + public void Handle(TCommand command) + { + var watch = Stopwatch.StartNew(); + + this.decoratedHandler.Handle(command); + + this.logger.Log(string.Format("{0} executed in {1} ms.", + command.GetType().Name, watch.ElapsedMilliseconds)); + } + } + + [TestMethod] + public static void TestRegisterOpenGenericDecorator() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + + // Search the given assembly and register all concrete types that + // implement ICommandHandler. + container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), + typeof(ICommandHandler<>).Assembly); + + // Wrap all ICommandHandler service types with a decorator + // that measures and logs the duration of that handler. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(MonitoringCommandHandlerDecorator<>)); + + // Wrap all ICommandHandler types (in this case it will + // wrap the monitoring decorator), but only if the TCommand contains + // any properties. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(ValidatorCommandHandlerDecorator<>), context => + { + var commandType = context.ServiceType.GetGenericArguments()[0]; + bool mustDecorate = commandType.GetProperties().Any(); + return mustDecorate; + }); + + // Act + var handler = + container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(handler, + typeof(ValidatorCommandHandlerDecorator)); + } + ]]> + + The (possibly open generic) service type that will be wrapped by the + given . + The (possibly the open generic) decorator type that will + be used to wrap the original service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or implement + , when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned when the supplied + returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the decorator type that is returned from is + supplied when the supplied returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the decorator type that is returned by the + supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The types returned from the may be non-generic, + closed-generic, open-generic and even partially-closed generic. The container will try to fill in + the generic parameters based on the resolved service type. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The type returned from may have a constructor with an + argument of type where T is . In this + case, the library will not inject the decorated itself into the + decorator instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + The following is an example of the registration of a decorator through the factory delegate: + , MoveCustomerCommandHandler>(); + + container.RegisterDecorator( + typeof(ICommandHandler<>), + context => typeof(LoggingCommandHandler<,>).MakeGenericType( + typeof(LoggingCommandHandler<,>).GetGenericArguments().First(), + context.ImplementationType), + Lifestyle.Transient, + context => true); + + var handler = container.GetInstance>(); + + Assert.IsInstanceOfType(handler, + typeof(LoggingCommandHandler)); + + ]]> + The code above allows a generic LoggingCommandHandler<TCommand, TImplementation> to + be applied to command handlers, where the second generic argument will be filled in using the + contextual information. + + The definition of the (possibly open generic) service type that will + be wrapped by the decorator type that is returned from . + A factory that allows building Type objects that define the + decorators to inject, based on the given contextual information. The delegate is allowed to return + (partially) open-generic types. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the decorator must be applied to a + service type. + Thrown when one of the arguments is a null reference. + + + + Ensures that the supplied decorator is returned when the supplied + returns true, wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. By default, a new instance will be returned on + each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when does not inherit + from or implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested TService. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested serviceType. + Thrown when there are errors resolving the service instance. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType. -or- null if there is no service object of type + . + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + An or null (Nothing in VB). + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned, or an exception is throw when + is set to true. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + The indication whether the method should return null or throw + an exception when the type is not registered. + An or null (Nothing in VB). + + + + Verifies and diagnoses this Container instance. This method will call all registered + delegates, iterate registered collections and throws an exception if there was an error. + + Thrown when the registration of instances was + invalid. + + + + Verifies the Container. This method will call all registered delegates, + iterate registered collections and throws an exception if there was an error. + + Specifies how the container should verify its configuration. + Thrown when the registration of instances was + invalid. + Thrown in case there are diagnostic errors and + the option is supplied. + Thrown when has an invalid value. + + + + Contains methods for registering and creating collections in the . + + + + + Gets the for this instance. + + The for this instance. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new to a collection of registrations for the given + . Calls to Append can both preceed and follow a call to one + of the Container.Collections.Register + overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + Thrown when the is ambiguous. + + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + The lifestyle that specifies how the returned instance will be cached. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends the specified delegate to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The element type of the collections to register. + The instance to register. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + TThe element type of the collections to register. + The instance to register. + Thrown when the is ambiguous, or + does not implement . + + Thrown when either or + are null references. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + The container-uncontrolled collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Provides data for and interaction with the + ContainerLocking event of + the . + + + + + Delegate that allows intercepting calls to and + . + + Contextual information about the to be created object. + A delegate that produces the actual instance according to its + lifestyle settings. + The instance that is returned from or an intercepted instance. + + + Configuration options for the Container. + + The following example shows the typical usage of the ContainerOptions class. + (); + + // Use of ContainerOptions class here. + container.Options.AllowOverridingRegistrations = true; + + // Replaces the previous registration of ITimeProvider + container.Register(); + ]]> + + + + + Occurs just before the container is about to be locked, giving the developer a last change to + interact and change the unlocked container before it is sealed for further modifications. Locking + typically occurs by a call to Container.GetInstance, Container.Verify, or any other + method that causes the construction and resolution of registered instances. + + + + The ContainerLocking event is called exactly once by the container, allowing a developer to + register types, hook unregistered type resolution events that need to be applied last, or see + who is responsible for locking the container. + + + A registered event handler delegate is allowed to make a call that locks the container, e.g. + calling Container.GetInstance; this will not cause any new ContainerLocking event to + be raised. Doing so, however, is not advised, as that might cause any following executed handlers + to break, in case they require an unlocked container. + + + + + + Gets the container to which this ContainerOptions instance belongs to. + + The current Container. + + + + Gets or sets a value indicating whether the container allows overriding registrations. The default + is false. + + The value indicating whether the container allows overriding registrations. + + + + Gets or sets a value indicating whether the container should suppress checking for lifestyle + mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default + is false. This setting will have no effect when is true. + + The value indicating whether the container should suppress checking for lifestyle + mismatches. + + + + + Gets or sets a value indicating whether the container should use a loosened (i.e. less strict) + behavior for detecting lifestyle mismatches (see: https://simpleinjector.org/dialm). In short, + when is set to true + dependencies are allowed to be injected into + components. When disabled, a warning would be given in that case. + + + Simple Injector allows custom lifestyles to be created and this loosened behavior works on custom + lifestyles as well. The loosened behavior will ignore any lifestyle mismatch checks on any + component with a lifestyle that has a that is equal or shorter than + the length of . + + + + + + Gets or sets a value indicating whether the container should automatically trigger verification + and diagnostics of its configuration when the first service is resolved (e.g. the first call to + GetInstance). The behavior is identical to calling Verify() + manually. The default is false. + + The value indicating whether the container should automatically trigger verification. + + + Gets or sets a value indicating whether. + This method is deprecated. Changing its value will have no effect. + The value indicating whether the container will return an empty collection. + + + + Gets or sets a value indicating whether all the containers in the current AppDomain should throw + exceptions that contain fully qualified type name. The default is false which means + the type's namespace is omitted. + + The value indicating whether exception message should emit full type names. + + + + Gets or sets a value indicating whether the container should resolve unregistered concrete types. + The default value is true. Consider changing the value to false to prevent + accidental creation of types you haven't registered explicitly. + + The value indicating whether the container should resolve unregistered concrete types. + + Thrown when this container instance is locked and can not be altered. + + + + + Gets or sets the constructor resolution behavior. By default, the container only supports types + that have a single public constructor. + + The constructor resolution behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + Gets or sets the dependency injection behavior. + The constructor injection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the property selection behavior. The container's default behavior is to do no + property injection. + + The property selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the lifestyle selection behavior. The container's default behavior is to make + registrations using the lifestyle. + The lifestyle selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default lifestyle that the container will use when a registration is + made when no lifestyle is supplied. + The default lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default scoped lifestyle that the container should use when a registration is + made using Lifestyle.Scoped. + The default scoped lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. + By default, this value is true for the first few containers that are created in an AppDomain + and false for all other containers. You can set this value explicitly to false + to prevent the use of dynamic assemblies or you can set this value explicitly to true to + force more container instances to use dynamic assemblies. Note that creating an infinite number + of Container instances (for instance one per web request) + with this property set to true will result in a memory leak; dynamic assemblies take up + memory and will only be unloaded when the AppDomain is unloaded. + + A boolean indicating whether the container should use a dynamic assembly for compilation. + + + + + Registers an delegate that allows intercepting calls to + GetInstance and + . + + + If multiple registered instances must be applied, they will be + applied/wrapped in the order of registration, i.e. the first registered interceptor will call the + original instance producer delegate, the second interceptor will call the first interceptor, etc. + The last registered interceptor will become the outermost method in the chain and will be called + first. + + The delegate to register. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + The following example shows the usage of the method: + + { + object instance = producer.Invoke(); + Console.WriteLine(instance.GetType().Name + " resolved for " + context.Producer.ServiceType.Name); + return instance; + }, + context => context.Producer.ServiceType.Name.EndsWith("Controller")); + + container.Register(); + container.Register(); + + // This line will write "HomeViewModel resolved for IHomeViewModel" to the console. + container.GetInstance(); + ]]> + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The scope that manages the lifetime of singletons and other container-controlled instances. + + + + + Allows registering an delegate that will be called when the container + gets disposed, but before the container disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to + Dispose, the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Adds the to the list of items that will get disposed when the + container gets disposed. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. Instead, + provides an atomic operation for getting and setting an item. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either of the arguments is a null reference (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances + are returned in order of creation/registration. When + Container.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be + disposed in opposite order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + + An instance of this type can be injected into constructors of decorator classes that are registered + using RegisterDecorator. This type contains + contextual information about the applied decoration and it allows users to examine the given instance + to make runtime decisions. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterDecorator + overload that takes this delegate. This type contains information about the decoration that is about + to be applied and it allows users to examine the given instance to see whether the decorator should + be applied or not. + + + Please see the + RegisterDecorator + method for more information. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + Hooks into the building process and adds a decorator if needed. + + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diaal. + + + + Gets the lifestyles that causes the registrations to be conflicting. + instances. + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the registration that caused this warning. + An . + + + + Gets the list of registrations that are in conflict with the . + + A list of instances. + + + + Entry point for doing diagnostic analysis on instances. + + + The following example shows the usage of the Analyzer class: + + + + + + Analyzes the supplied instance. + + The container instance to analyze. + A collection of sub types that describe the diagnostic + warnings and messages. + + + + Diagnostic result for a warning about a concrete type that was not registered explicitly and was not + resolved using unregistered type resolution, but was created by the container using the transient + lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + Gets a collection of instances that describe all + container-registered dependencies for the given component. + List of objects. + + + + A hierarchical group of . + + + + + Gets the base that describes the service types of its + . The value often be either (in case this is a + root group) or a partial generic type to allow hierarchical grouping of a large number of related + generic types. + + The . + + + Gets the friendly name of the group. + The name. + + + Gets the description of the group. + The description. + + + Gets the diagnostic type of all grouped instances. + The . + + + Gets the parent or null (Nothing in VB) when this is the + root group. + The . + + + Gets the collection of child s. + A collection of elements. + + + Gets the collection of instances. + /// A collection of elements. + + + + Base class for types that hold information about a single diagnostic message or warning for a + particular type or part of the configuration. + + + + Gets the severity of this result. + The . + + + Gets the diagnostic type of this result. + The . + + + Gets the service type to which this warning is related. + A . + + + Gets the description of the diagnostic result. + A with the description. + + + Gets the documentation URL of the diagnostic result. + A with the URL. + + + Gets the hierarchical group to which this diagnostic result belongs. + The . + + + + Specifies the list of severity levels that diagnostic results can have. + + + + Information messages and tips about the configuration. + + + Warning messages that are likely to cause problems in your application. + + + + Specifies the list of diagnostic types that are currently supported by the diagnostic + . Note that new diagnostic types might be added in future versions. + For more information, please read the + Diagnosing your configuration using the Diagnostic + Services wiki documentation. + + + + + Diagnostic type that warns about + a concrete type that was not registered explicitly and was not resolved using unregistered type + resolution, but was created by the container using the transient lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + + Diagnostic type that warns when a + component depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + + Diagnostic type that warns when a + component depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + + Diagnostic type that warns when a component depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + + Diagnostic type that warns when multiple registrations map to the same component and + lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + + Diagnostic type that warns when a component is registered as transient, while implementing + . + For more information, see: https://simpleinjector.org/diadt. + + + + + Diagnostic type that warns when multiple registrations exist that map to the same component but + with different lifestyles, which will cause the component to be cached in different -possibly + incompatible- ways. + For more information, see: https://simpleinjector.org/diaal. + + + + + Diagnostic result for a warning about a component that is registered as transient, but implements + . + For more information, see: https://simpleinjector.org/diadt. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result for a warning about a + component that depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result that warns about a + component that depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + Gets the instance that describes the current relationship between the checked component + and the short-circuited dependency. + The . + + + + Gets the collection of registrations that have the component's current dependency as + implementation type, but have a lifestyle that is different than the current dependency. + + A collection of instances. + + + + Diagnostic result that warns about a component that depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + Gets the created type. + A . + + + Gets the list of registrations that are dependencies of the . + A collection of instances. + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + Gets the lifestyle on which instances are torn. + A . + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the list of registrations that are affected by this warning. + A list of instances. + + + + Thrown by the container in case of a diagnostic error. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message. + + The list of errors. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + Gets the list of instances. + A list of instances. + + + + Provides data for and interaction with the + ExpressionBuilding event of + the . An observer can change the + property to change the component that is + currently being built. + + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + + Gets the type that is known to be returned by the + Expression (most often the implementation + type used in the Register call). This type will be a derivative of + RegisteredServiceType (or + or RegisteredServiceType itself). If the Expression is changed, the new expression + must also return an instance of type KnownImplementationType or a sub type. + This information must be described in the new Expression. + + A . + + + Gets the lifestyle for the component that is currently being built. + The . + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Provides data for and interaction with the + ExpressionBuilt event of + the . An observer can change the + property to change the component that is currently + being built. + + + + Initializes a new instance of the class. + Type of the registered service. + The registered expression. + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + Gets or sets the current lifestyle of the registration. + The original lifestyle of the registration. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Helper methods for the container. + + + + + Contains contextual information about the direct consumer for which the given dependency is injected + into. + + + + Initializes a new instance of the class. + The constructor parameter for the created component. + + + Initializes a new instance of the class. + The implementation type of the consumer of the component that should be created. + The property for the created component. + + + Gets the service type of the consumer of the component that should be created. + The closed generic service type. + + + Gets the implementation type of the consumer of the component that should be created. + The implementation type. + + + + Gets the information about the consumer's target in which the dependency is injected. The target + can be either a property or a constructor parameter. + + The for this context. + + + + + + + + + + + + + + + + Discovers the attributes of the code element (a property or parameter) where a dependency will be + injected into, and provides access to its meta data. + + + + + Gets the constructor argument of the consumer of the component where the dependency will be + injected into. The property can return null. + + The or null when the dependency is injected into a property. + + + + + Gets the property of the consumer of the component where the dependency will be injected into. + The property can return null. + + The or null when the dependency is injected into a constructor + argument instead. + + + Gets the name of the target. + A string containing the name of the target. + + + Gets the type of the target. + A containing the type of the target. + + + Gets the member of the target. This is either the constructor of the parameter, or in + case the target is a property, the property itself will be returned. + A containing the type of the target. + + + + Returns an array of all of the custom attributes defined on either the or + the , excluding named attributes, or an empty array if there are no custom + attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + There is more than one attribute of type attributeType + defined on this member. + + + + Returns an array of custom attributes defined on either the or + the , identified by type, or an empty array if there are no custom + attributes of that type. + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + Thrown when attributeType is null. + + + + Indicates whether one or more instance of attributeType is defined on this either the + or the . + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + true if the attributeType is defined on this member; false otherwise. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The parameter to inspect. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The parameter to inspect.The parameter to inspect. + True to inspect the ancestors of element; otherwise, false. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The type of attribute to search for. + A custom attribute that matches attributeType, or null if no such attribute is found. + + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A custom attribute matching attributeType, or null if no such attribute is found. + + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter. + + The type of attribute to search for. + A collection of the custom attributes that are applied to element and that match T, or + an empty collection if no such attributes exist. + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter, and optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A collection of the custom attributes that are applied to element and that match T, or an + empty collection if no such attributes exist. + + + + + + + + + + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + GetCurrentRegistrations() or + GetRegistration(Type, bool). + + + The Register method overloads create InstanceProducer instances internally, but + InstanceProducers can be created manually to implement special scenarios. An + InstanceProducer wraps instance. The Registration builds an + that describes the intend to create the instance according to a certain + lifestyle. The InstanceProducer on the other hand transforms this Expression to a + delegate and allows the actual instance to be created. A Registration itself can't create any + instance. The InsanceProducer allows intercepting created instances by hooking onto the + Container.ExpressionBuilt event. The + RegisterDecorator methods for + instance work by hooking onto the ExpressionBuilt event and allow wrapping the returned instance + with a decorator. + + + The following example shows the creation of two different InstanceProducer instances that wrap + the same Registration instance. Since the Registration is created using the + Singleton lifestyle, both producers will return + the same instance. The InstanceProducer for the Interface1 however, will wrap that + instance in a (transient) Interface1Decorator. + (container); + + var producer1 = new InstanceProducer(typeof(Interface1), registration); + var producer2 = new InstanceProducer(typeof(Interface2), registration); + + container.RegisterDecorator(typeof(Interface1), typeof(Interface1Decorator)); + + var instance1 = (Interface1)producer1.GetInstance(); + var instance2 = (Interface2)producer2.GetInstance(); + + Assert.IsInstanceOfType(instance1, typeof(Interface1Decorator)); + Assert.IsInstanceOfType(instance2, typeof(ServiceImpl)); + + Assert.AreSame(((Interface1Decorator)instance1).DecoratedInstance, instance2); + ]]> + + + + Initializes a new instance of the class. + The service type for which this instance is created. + The . + + + + Gets the for this registration. The returned lifestyle can differ from the + lifestyle that is used during the registration. This can happen for instance when the registration + is changed by an ExpressionBuilt + registration or gets decorated. + + The for this registration. + + + Gets the service type for which this producer produces instances. + A instance. + + + Gets the instance for this instance. + The . + + + + Creates a new based on the given + and where the will be used as-is; + no interception (using ExpressionBuilt) such as + decorators will be applied. + + The service type for which this instance is created. + The expression that describes the instance to be produced. + The instance for this registration. + A new that describes the expression. + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + + Builds an expression that expresses the intent to get an instance by the current producer. A call + to this method locks the container. New registrations can't be made after a call to this method. + + An Expression. + + + + Gets the collection of relationships for this instance that the container knows about. + This includes relationships between the registered type and its dependencies and relationships + between applied decorators and their dependencies. Note that types that are not newed up by the + container and properties that are injected inside a custom delegate that is registered using the + RegisterInitializer + method are unknown to the container and are not returned from this method. + Also note that this method will return an empty collection when called before the + registered type is requested from the container (or before + Verify is called). + + An array of instances. + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + The various visualization options for building a string representation of + the object graph. + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + Thrown when options is null. + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + or . + + The service type. + + + Initializes a new instance of the class. + The . + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + A map containing a generic argument (such as T) and the concrete type (such as Int32) that it + represents. + + + + Implements equality. Needed for doing LINQ distinct operations. + The other to compare to. + True or false. + + + Overrides the default hash code. Needed for doing LINQ distinct operations. + An 32 bit integer. + + + + Container controlled collections can be supplied with both Type objects or direct Registration + instances. + + + + + Gets a message that describes the current exception. + + T + he error message that explains the reason for the exception, or an empty string(""). + + + + + Allows verifying whether a given type has a direct or indirect dependency on itself. Verifying is done + by preventing recursive calls to an InstanceProducer. A CyclicDependencyValidator instance checks a + single InstanceProducer and therefore a single service type. + + + + + Allows retrieving the concrete types of the generic type arguments of that must be used to create a + closed generic implementation of a given open generic implementation, based on on the concrete + arguments of the given closed base type. + + + + + Helper class for building closed generic type for a given open generic type and a closed generic base. + + + + Result of the GenericTypeBuilder. + + + + A open generic type with the concrete arguments that can be used to create a closed generic type. + + + + + Allows validating an ArgumentMapping. + + + + + Factory for the creation of a delegate that applies caching to the supplied + . + + A factory for creating new instances. + A factory that returns cached instances. + + + + Instances returned from the container can be cached. The contains several + overloads of the Register method that take a Lifestyle instance as argument to define + how returned instances should be cached. The core library contains two lifestyles out of the box. By + supplying Lifestyle.Transient, the registered instance is not + cached; a new instance is returned every time it is requested or injected. By supplying + Lifestyle.Singleton instances can be cached indefinitely; only + a single instance of the registered component will be returned by that container instance. Other + lifestyles are defined in integration and extension packages. The + CreateCustom method allows defining a custom lifestyle and + the CreateHybrid method + allows creating a lifestyle that mixes multiple other lifestyles. + + + This type is abstract and can be overridden to implement a custom lifestyle. + + + + + The lifestyle instance that doesn't cache instances. A new instance of the specified + component is created every time the registered service is requested or injected. + + + The following example registers the SomeServiceImpl implementation for the + ISomeService service type using the Transient lifestyle: + (Lifestyle.Transient); + ]]> + Note that Transient is the default lifestyle, the previous registration can be reduced to + the following: + (); + ]]> + + + + + + The lifestyle that caches components according to the lifetime of the container's configured + scoped lifestyle. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the active scope gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Scoped lifestyle: + (Lifestyle.Scoped); + ]]> + + + + + + The lifestyle that caches components during the lifetime of the instance + and guarantees that only a single instance of that component is created for that instance. Since + general use is to create a single Container instance for the lifetime of the application / + AppDomain, this would mean that only a single instance of that component would exist during the + lifetime of the application. In a multi-threaded applications, implementations registered using + this lifestyle must be thread-safe. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the container gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Singleton lifestyle: + (Lifestyle.Singleton); + ]]> + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the user friendly name of this lifestyle. + The user friendly name of this lifestyle. + + + + Gets the length of the lifestyle. Implementers must implement this property. The diagnostic + services use this value to compare lifestyles with each other to determine lifestyle + misconfigurations. + + The representing the length of this lifestyle. + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The lifestyle to use when + returns true. + The lifestyle to use when + returns false. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + lifestyle.GetCurrentScope(container) != null, + lifestyle, + Lifestyle.Transient); + + var mixedScopeLifestyle = Lifestyle.CreateHybrid( + () => HttpContext.Current != null, + new WebRequestLifestyle(), + mixedLifetimeTransientLifestyle); + ]]> + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Lifetime Scope and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The scoped lifestyle to use when + returns true. + The scoped lifestyle to use when + returns false. + A new scoped hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + + + + Creates a custom lifestyle using the supplied delegate. + + + The supplied will be called just once per registered + service. The supplied will be called by the framework + when the type is resolved for the first time, and the framework will supply the factory with a + Func<object> for creating new (transient) instances of that type (that might + have been intercepted and + initializers might have been applied). + It is the job of the to return a Func<object> + that applies the proper caching. The Func<object> that is returned by the + will be stored for that registration (every + registration will store its own Func<object> delegate) and this delegate will be + called every time the service is resolved (by calling + container.GetInstance<TService> or when that service is injected into another + type). + + The name of the lifestyle to create. The name is used to display the lifestyle + in the debugger. + A factory delegate that takes a Func<object> delegate + that will produce a transient instance and returns a delegate that returns cached instances. + A new . + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is an empty string. + + The following example shows the creation of a lifestyle that caches registered instances for 10 + minutes: + + { + TimeSpan timeout = TimeSpan.FromMinutes(10); + var syncRoot = new object(); + var expirationTime = DateTime.MinValue; + object instance = null; + + // If the application has multiple registrations using this lifestyle, each registration + // will get its own Func delegate (created here) and therefore get its own set + // of variables as defined above. + return () => + { + lock (syncRoot) + { + if (expirationTime < DateTime.UtcNow) + { + instance = instanceCreator(); + expirationTime = DateTime.UtcNow.Add(timeout); + } + + return instance; + } + }; + }); + + var container = new Container(); + + // We can reuse the created lifestyle for multiple registrations. + container.Register(customLifestyle); + container.Register(customLifestyle); + ]]> + + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified caching as + specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances instance using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + + The concrete type that will be registered. + The instance for which a + must be created. + A new or cached instance. + Thrown when is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + This method might fail when run in a partial trust sandbox when + is an internal type. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The delegate that will be responsible for creating new instances. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. An execution context scope flows with the logical execution context. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ExecutionContextScopeLifestyle class: + (Lifestyle.Scoped); + + using (AsyncScopedLifestyle.BeginScope(container)) + { + var instance1 = container.GetInstance(); + // ... + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + This lifestyle can be used to implement ambient context-less scoping in Simple Injector. This lifestyle + can be set as DefaultScopedLifestyle and later used via Lifestyle.Scoped to register scoped instances, + while instances are resolved via Scope.GetInstance. + + + + + Forwards CreateRegistration calls to the lifestyle that is returned from the registered + container.Options.LifestyleSelectionBehavior. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. A scope is thread-specific, each thread should define its own scope. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ThreadScopedLifestyle class: + (Lifestyle.Scoped); + + using (container.BeginLifetimeScope()) + { + var instance1 = container.GetInstance(); + + // This call will return the same instance. + var instance2 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance1, instance2)); + + // Create a nested scope. + using (container.BeginLifetimeScope()) + { + // A nested scope gets its own instance. + var instance3 = container.GetInstance(); + + Assert.IsFalse(object.ReferenceEquals(instance1, instance3)); + + // This call will return the same instance. + var instance4 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance3, instance4)); + } + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterConditional + overload that takes this delegate. This type contains information about the open generic service that + is about to be created and it allows the user to examine the given instance to decide whether this + implementation should be created or not. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the closed generic implementation type that will be created by the container. + + The implementation type. + + + Gets a value indicating whether a previous Register registration has already + been applied for the given . + The indication whether the event has been handled. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + A Registration implements lifestyle based caching for a single service and allows building an + that describes the creation of the service. + + + implementations create a new Registration instance for each registered + service type. s returned from the + BuildExpression method can be + intercepted by any event registered with , have + initializers + applied, and the caching particular to its lifestyle have been applied. Interception using the + Container.ExpressionBuilt will not + be applied in the Registration, but will be applied in . + + See the documentation for an example. + + + + + Initializes a new instance of the class. + + The this that created this registration. + The instance for this registration. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Gets the type that this instance will create. + The type that this instance will create. + + + Gets the this that created this registration. + The this that created this registration. + + + Gets the instance for this registration. + The instance for this registration. + + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. The default is false. Having a value of false, does not force an + instance to be disposed of, though; Transient instances, for instance, will never be disposed of. + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. + + + + Gets or sets a value indicating whether this registration object contains a user + supplied instanceCreator factory delegate. + + + + Builds a new with the correct caching (according to the specifications of + its ) applied. + + An . + + + + Gets the list of instances. Note that the list is only available + after calling . + + A new array containing the instances. + + + + Initializes an already created instance and applies properties and initializers to that instance. + + + This method is especially useful in integration scenarios where the given platform is in control + of creating certain types. By passing the instance created by the platform to this method, the + container is still able to apply any properties (as defined using a custom + ) and by applying any initializers. + + The instance to initialize. + Thrown when is a null + reference (Nothing in VB). + Thrown when the supplied is not + of type . + + + + Suppressing the supplied for the given registration. + + The . + The justification of why the warning must be suppressed. + Thrown when is a null + reference. + Thrown when either is an + empty string or when is not a valid value of . + + + + + Builds a delegate for the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers + that are applicable to the given (if any). + + The interface or base type that can be used to retrieve instances. + + The delegate supplied by the user that allows building or creating new instances. + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds a delegate for the creation of . + The returned might be intercepted by a + Container.ExpressionBuilding event, + and the creation of the will have been wrapped with a + delegate that executes the registered + initializers + that are applicable to the given (if any). + + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds an that describes the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers that are + applicable to the given (if any). + + + The interface or base type that can be used to retrieve instances. + + + The delegate supplied by the user that allows building or creating new instances. + An . + Thrown when one of the arguments is a null reference. + + + + + Builds an that describes the creation of . + The returned might be intercepted + by a Container.ExpressionBuilding + event, and the creation of the will have been wrapped with + a delegate that executes the registered + initializers that are applicable + to the InstanceProducer's ServiceType (if any). + + An . + Thrown when one of the arguments is a null reference. + + + Implements a cache for implementations. + + is thread-safe can be used over multiple threads concurrently, but note that the + cached instances might not be thread-safe. + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The container instance that the scope belongs to. + + + Gets the container instance that this scope belongs to. + The instance. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Adds the to the list of items that will get disposed when the + scope ends. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances are returned + in order of creation/registration. When Scope.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be disposed in opposite + order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + Releases all instances that are cached by the object. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType -or- null if there is no service object of type + . + + + + Releases all instances that are cached by the object. + + False when only unmanaged resources should be released. + + + + Base class for scoped lifestyles. A scoped lifestyle caches instances for the duration of an implicitly + or explicitly defined scope. Such scope can be an (implicitly defined) web request or an explicitly + defined Lifetime Scope. The lifetime of instances registered with a scoped lifestyle is always equal + or bigger than one-instance-per-object-graph. In other words, a call to GetInstance() will never create + more than one instance of such registered type. + + + + + Gets the scoped lifestyle that allows Scoped registrations to be resolved direclty from the + by calling . This allows multiple + scopes to be active and overlap within the same logical context, such as a single thread, or an + asynchronous context. + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Signals the lifestyle whether instances should be + disposed or not. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the length of the lifestyle. + The representing the length of this lifestyle. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The instance. + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Adds the to the list of items that will get disposed when the + scope ends. + + The instance. + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method should never return null. + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + + By default, this method calls the method and invokes the + returned delegate. This method can be overridden to provide an optimized way for getting the + current scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + Internal helper for string resources. + + + + Contains contextual information for creating an implementation type. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + Returns a list of base types and interfaces of implementationType that either + equal to serviceType or are closed or partially closed version of serviceType (in case + serviceType itself is generic). + So: + -in case serviceType is non generic, only serviceType will be returned. + -If implementationType is open generic, serviceType will be returned (or a partially closed + version of serviceType is returned). + -If serviceType is generic and implementationType is not, a closed version of serviceType will + be returned. + -If implementationType implements multiple (partially) closed versions of serviceType, all those + (partially) closed versions will be returned. + + The (open generic) service type to match. + The implementationType to search. + A list of types. + + + Useful extensions on . + + + + Builds an easy to read type name. Namespaces will be omitted, and generic types will be displayed + in a C#-like syntax. Ideal for reporting type names in exception messages. + + The type to convert. + A human-readable string representation of that type. + Thrown when the supplied argument is a null reference. + + + + Returns true is there is a closed version of the supplied + that is assignable from the current . This method returns true when either + itself, one of its base classes or one of its implemented interfaces is a + closed version of ; otherwise false. + + The type to check. + The generic type definition to match. + True when type is assignable; otherwise false. + + + + Gets the single closed version of that the current + is assignable from. In case none or multiple matching closed types are + found, and exception is thrown. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + The matching closed type. + Thrown when one of the arguments is a null reference. + Thrown when is not + a generic type or when none of the base classes or implemented interfaces of + are closed-versions of . + Thrown when multiple matching closed generic types + are found. + + + + Gets the list of closed versions of that the current + is assignable from. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + A list of matching closed generic types. + + + + Defines options to control the types returned from the + GetTypesToRegister + method. For a type to be returned, it should match all the conditions described by the class's + properties. In other words, in case the searched assembly contains a generic type, that is both a + decorator and a composite, it will only be returned by GetTypesToRegister in case both + , and + are set to true. + + + + Initializes a new instance of the class. + + + + Gets or sets a value indicating whether decorator types should be included in the result. The default + value of this property is false. A type is considered a decorator if the type's constructor + contains a parameter of the type that exactly matches the serviceType argument, + supplied to the + GetTypesToRegister + method, or when there is a argument where T matches the + serviceType argument. + + A boolean. + + + + Gets or sets a value indicating whether generic type definitions (types that have + Type.IsGenericTypeDefinition + set to true) + should be included in the result. The default value for this property is false. + + A boolean. + + + + Gets or sets a value indicating whether composite types should be included in the result. The default + value of this property is true. A type is considered a composite if the type's constructor + contains a parameter of IEnumerable<T>, ICollection<T>, + IList<T>, IReadOnlyCollection<T>, + IReadOnlyList<T> or T[] (array of T), where T + exactly matches the serviceType argument, supplied to the + GetTypesToRegister + method. + + A boolean. + + + + Provides data for and interaction with the + ResolveUnregisteredType event of + the . An observer can check the + to see whether the unregistered type can be handled. The + method can be called to register a delegate + that allows creation of instances of the unregistered for this and future requests. + + + + Gets the unregistered service type that is currently requested. + The unregistered service type that is currently requested. + + + + Gets a value indicating whether the event represented by this instance has been handled. + This property will return true when has been called on + this instance. + + The indication whether the event has been handled. + + + + Registers a delegate that allows creation of instances of the type + expressed by the for this and future requests. The delegate + will be caches and future requests will directly call that delegate. + + The delegate that allows creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers an that describes the creation of instances of the type + expressed by the for this and future requests. The delegate + will be cached and future requests will directly use that expression or the compiled delegate. + + + NOTE: If possible, use the Register(Registration) overload, + since this allows the analysis services to determine any configuration errors on the lifestyle of + the registration. + + The expression that describes the creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers a that describes the creation of instances of the type + expressed by the for this and future requests. The + registration will be cached and future requests will directly call unon that registration, the + expression that it generates or the delegate that gets compiled from that expression. + + The registration that describes the creation of instances according to + the registration's lifestyle of the type expressed by the . + Thrown when the is a + null reference. + Thrown when the is a + not exactly of type where T equals the . + + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + This enumeration defines in which way the container should run the verification process. + + + + + Specifies that the container performs verification only, which means that it will test whether + all registrations can be constructed by iterating the registrations and letting the container + create at least one instance of each registration. An + will be thrown in case the configuration is invalid. + + + + + Specifies that the container will run diagnostic analysis after the verification succeeded. The + container will diagnose the configuration with a subset of the available diagnostic warnings, that + are most likely an indication of a configuration mistake. A complete set of diagnostic warnings + can be retrieved by calling + Analyzer.Analyze or by viewing the + container in the Visual Studio debugger, after the verification has succeeded. + + + + + Visualization options for providing various information about instances. + + + + + Gets or sets a value indicating whether to include lifestyle information in the visualization. + + The value to include life style information. + + + + Gets or sets a value indicating whether to use fully qualified type names in the visualization. + + The value to use fully qualified type names. + + + diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.CopyComplete b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.CoreCompileInputs.cache b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..5e1bba0 --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +fc2bf9e6390f647e77ab7343aa84e95ed6a1e57e diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.FileListAbsolute.txt b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..4e04467 --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csproj.FileListAbsolute.txt @@ -0,0 +1,23 @@ +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.App.exe.config +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.App.exe +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.App.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Domain.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Infra.IoC.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Domain.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Infra.IoC.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\obj\Debug\AvaliacaoMinutoSeguros.App.csprojAssemblyReference.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\obj\Debug\AvaliacaoMinutoSeguros.App.csproj.CoreCompileInputs.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\obj\Debug\AvaliacaoMinutoSeguros.App.csproj.CopyComplete +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\obj\Debug\AvaliacaoMinutoSeguros.App.exe +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\obj\Debug\AvaliacaoMinutoSeguros.App.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\SimpleInjector.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Infra.Data.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\SimpleInjector.xml +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Infra.Data.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AutoMapper.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Business.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Business.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AutoMapper.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AutoMapper.xml +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.App\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.pdb diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csprojAssemblyReference.cache b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csprojAssemblyReference.cache new file mode 100644 index 0000000..41a6524 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.csprojAssemblyReference.cache differ diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.exe b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.exe new file mode 100644 index 0000000..2633a0d Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.exe differ diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.pdb b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.pdb new file mode 100644 index 0000000..0b9eb50 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/obj/Debug/AvaliacaoMinutoSeguros.App.pdb differ diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/AvaliacaoMinutoSeguros.App/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..16b8cf6 Binary files /dev/null and b/AvaliacaoMinutoSeguros.App/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/AvaliacaoMinutoSeguros.App/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/AvaliacaoMinutoSeguros.App/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.App/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/AvaliacaoMinutoSeguros.App/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.App/packages.config b/AvaliacaoMinutoSeguros.App/packages.config new file mode 100644 index 0000000..5a0e8ee --- /dev/null +++ b/AvaliacaoMinutoSeguros.App/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Business/AutoMapper/AutoMapperConfig.cs b/AvaliacaoMinutoSeguros.Business/AutoMapper/AutoMapperConfig.cs new file mode 100644 index 0000000..25e54d5 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/AutoMapper/AutoMapperConfig.cs @@ -0,0 +1,15 @@ +using AutoMapper; + +namespace AvaliacaoMinutoSeguros.Business.AutoMapper +{ + public static class AutoMapperConfig + { + public static MapperConfiguration RegisterMappings() + { + return new MapperConfiguration(cfg => + { + cfg.AddProfile(new ModelToViewModelMappingProfile()); + }); + } + } +} diff --git a/AvaliacaoMinutoSeguros.Business/AutoMapper/IAutoMapperConfig.cs b/AvaliacaoMinutoSeguros.Business/AutoMapper/IAutoMapperConfig.cs new file mode 100644 index 0000000..19ef26f --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/AutoMapper/IAutoMapperConfig.cs @@ -0,0 +1,10 @@ +using AutoMapper; + +namespace AvaliacaoMinutoSeguros.Business.AutoMapper +{ + public interface IAutoMapperConfig + { + void RegisterMappings(); + IMapper Mapper { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Business/AutoMapper/ModelToViewModelMappingProfile.cs b/AvaliacaoMinutoSeguros.Business/AutoMapper/ModelToViewModelMappingProfile.cs new file mode 100644 index 0000000..9f47173 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/AutoMapper/ModelToViewModelMappingProfile.cs @@ -0,0 +1,15 @@ +using AutoMapper; +using AvaliacaoMinutoSeguros.Domain.Entidades; +using AvaliacaoMinutoSeguros.Domain.ViewModel; + +namespace AvaliacaoMinutoSeguros.Business.AutoMapper +{ + public class ModelToViewModelMappingProfile : Profile + { + public ModelToViewModelMappingProfile() + { + CreateMap(); + CreateMap(); + } + } +} diff --git a/AvaliacaoMinutoSeguros.Business/AvaliacaoMinutoSeguros.Business.csproj b/AvaliacaoMinutoSeguros.Business/AvaliacaoMinutoSeguros.Business.csproj new file mode 100644 index 0000000..100dfda --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/AvaliacaoMinutoSeguros.Business.csproj @@ -0,0 +1,73 @@ + + + + + Debug + AnyCPU + {DB6A7603-577A-40ED-9349-4D1DDEEF2731} + Library + Properties + AvaliacaoMinutoSeguros.Business + AvaliacaoMinutoSeguros.Business + v4.7.2 + 512 + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\AutoMapper.9.0.0\lib\net461\AutoMapper.dll + + + ..\packages\AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0\lib\netstandard2.0\AutoMapper.Extensions.Microsoft.DependencyInjection.dll + + + ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + + + + + + + + + + + + + + + + + + + {9A75E813-824F-4E5E-BE63-7A8007961367} + AvaliacaoMinutoSeguros.Domain + + + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424} + AvaliacaoMinutoSeguros.Infra.Helps + + + + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Business/Properties/AssemblyInfo.cs b/AvaliacaoMinutoSeguros.Business/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..d56539c --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AvaliacaoMinutoSeguros.Business")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AvaliacaoMinutoSeguros.Business")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("db6a7603-577a-40ed-9349-4d1ddeef2731")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AvaliacaoMinutoSeguros.Business/Servicos/ServicoRssFeed.cs b/AvaliacaoMinutoSeguros.Business/Servicos/ServicoRssFeed.cs new file mode 100644 index 0000000..549846c --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/Servicos/ServicoRssFeed.cs @@ -0,0 +1,79 @@ +using AutoMapper; +using AvaliacaoMinutoSeguros.Domain.Interfaces.Repositorio; +using AvaliacaoMinutoSeguros.Domain.Interfaces.Servicos; +using AvaliacaoMinutoSeguros.Domain.ViewModel; +using AvaliacaoMinutoSeguros.Infra.Helps; +using System; +using System.Collections.Generic; + +namespace AvaliacaoMinutoSeguros.Business.Servicos +{ + public class ServicoRssFeed : IServicoRssFeed + { + private readonly IRepositorioRssFeed repositorioRssFeed; + + /// + /// Construtor, injeta o repositorio via IoC. + /// + /// + public ServicoRssFeed(IRepositorioRssFeed _repositorioRssFeed) + { + repositorioRssFeed = _repositorioRssFeed; + } + + /// + /// Processar o XML do blog + /// + /// URI do blog + /// retorna a model com os dados do blog + public RssFeedViewModel ProcessarRssFeed(string uri, IMapper mapper) + { + try + { + var rssFeed = repositorioRssFeed.ObterRssFeed(uri); + + var items = new List(); + var feedModel = mapper.Map(rssFeed.Channel); + + foreach (var item in feedModel.Items) + { + string texto = TratarTexto(item); + + item.TotalPalavrasBlog = item.TotalPalavras(texto); + item.Palavras = item.ObterPalavrasRepetidas(texto); + } + + return feedModel; + } + catch (Exception) + { + throw; + } + } + + /// + /// Remover as tags html, pontuação, os artigos, preposições e espaços desnecessarios do texto + /// + /// + /// + private static string TratarTexto(ItemViewModel item) + { + try + { + string texto = string.Concat(item.Title, " ", item.Description, " ", item.Encoded); + texto = StringHelpers.RemoverTagsHtml(texto); + texto = StringHelpers.RemoverPontuacao(texto); + texto = texto.ToLower(); + texto = StringHelpers.RemoverArtigosEPreposicoes(texto); + texto = StringHelpers.RemoverEspacos(texto); + return texto; + + } + catch (Exception) + { + + throw; + } + } + } +} diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.Extensions.Microsoft.DependencyInjection.dll b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.Extensions.Microsoft.DependencyInjection.dll new file mode 100644 index 0000000..a9c023b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.Extensions.Microsoft.DependencyInjection.dll differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.Extensions.Microsoft.DependencyInjection.pdb b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.Extensions.Microsoft.DependencyInjection.pdb new file mode 100644 index 0000000..56be0af Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.Extensions.Microsoft.DependencyInjection.pdb differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.dll b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.dll new file mode 100644 index 0000000..79121bd Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.dll differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.pdb b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.pdb new file mode 100644 index 0000000..a752d87 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.pdb differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.xml b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.xml new file mode 100644 index 0000000..21057bd --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/bin/Debug/AutoMapper.xml @@ -0,0 +1,1754 @@ + + + + AutoMapper + + + + + Add Action called against the IConfigurationProvider before it gets sealed + + + + + Add an action to be called when validating the configuration. + + the validation callback + + + + Allow the same map to exist in different profiles. + The default is to throw an exception, true means the maps are merged. + + + + + How many levels deep should AutoMapper try to inline the execution plan for child classes. + See the docs for details. + + + + + Auto map to this destination type from the specified source type. + Discovered during scanning assembly scanning for configuration when calling + + + + + If set to true, construct the destination object using the service locator. + + + + + For self-referential types, limit recurse depth. + + + + + If set to true, preserve object identity. Useful for circular references. + + + + + If set to true, disable constructor validation. + + + + + If set to true, include this configuration in all derived types' maps. + + + + + Skip normal member mapping and convert using a instantiated during mapping. + + + + + Ignore this member for configuration validation and skip during mapping. + + + Must be used in combination with + + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + Must be used in combination with + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + + Must be used in combination with + + + + + Substitute a custom value when the source member resolves as null + + + Must be used in combination with + + + + + Value to use if source value is null + + + + + Specify the source member to map from. Can only reference a member on the type + + + Must be used in combination with + + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + Must be used in combination with + + + + + Specify a value converter type to convert from the matching source member to the destination member + Use with to specify a separate source member to supply to the value converter + + + Must be used in combination with + + + + + type + + + + + Map destination member using a custom value resolver. + Use with to specify an type. + + + Must be used in combination with + + + + + or type + + + + + Contains profile-specific configuration + + + + + Source extension methods included for search + + + + + Specify which properties should be mapped. + By default only public properties are mapped. + + + + + Specify which fields should be mapped. + By default only public fields are mapped. + + + + + Specify which methods, of those that are eligible (public, parameterless, and non-static or extension methods), should be mapped. + By default all eligible methods are mapped. + + + + + Specify which constructors should be considered for the destination objects. + By default all constructors are considered. + + + + + Contains member configuration relating to source members + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Member maps with default values. Used in dynamic/dictionary scenarios when source/destination members do not exist. + + + + + Gets the feature of type . + + The type of the feature. + The feature or null if feature not exists. + + + + Add or update the feature. Existing feature of the same type will be replaced. + + The feature. + + + + Get all configured type maps created + + All configured type maps + + + + Find the for the configured source and destination type + + Configured source type + Configured destination type + Type map configuration + + + + Find the for the configured type pair + + Type pair + Type map configuration + + + + Find the for the configured source and destination type + + Source type + Destination type + Type map configuration + + + + Resolve the for the configured source and destination type, checking parent types + + Configured source type + Configured destination type + Type map configuration + + + + Resolve the for the configured type pair, checking parent types + + Type pair + Type map configuration + + + + Dry run all configured type maps and throw for each problem + + + + + Dry run single type map + + Type map to check + + + + Dry run all type maps in given profile + + Profile name of type maps to test + + + + Dry run all type maps in given profile + + Profile type + + + + Get all configured mappers + + List of mappers + + + + Gets the features collection. + + The feature colection. + + + + Find a matching object mapper. + + the types to match + the matching mapper or null + + + + Factory method to create formatters, resolvers and type converters + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Create a mapper instance based on this configuration. Mapper instances are lightweight and can be created as needed. + + The mapper instance + + + + Create a mapper instance with the specified service constructor to be used for resolvers and type converters. + + Service factory to create services + The mapper instance + + + + Compile all underlying mapping expressions to cached delegates. + Use if you want AutoMapper to compile all mappings up front instead of deferring expression compilation for each first map. + + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + the runtime type of the source object + the runtime type of the destination object + the execution plan + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + The source/destination map request + the execution plan + + + + Map constructor parameter from member expression + + Member type + Member expression + + + + Map constructor parameter from custom func that has access to + + Not used for LINQ projection (ProjectTo) + Custom func + + + + Ignore this member for validation and skip during mapping + + + + + Execute a mapping from the source object to a new destination object. + The source type is inferred from the source object. + + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to a new destination object. + + Source type to use, regardless of the runtime type + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Source type to use + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to the existing destination object. + + Source type to use + Destination type + Source object to map from + Destination object to map into + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to the existing destination object with supplied mapping options. + + Source type to use + Destination type + Source object to map from + Destination object to map into + Mapping options + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to a new destination object with explicit objects + + Source object to map from + Source type to use + Destination type to create + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with explicit objects and supplied mapping options. + + Source object to map from + Source type to use + Destination type to create + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to existing destination object with explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapped destination object, same instance as the object + + + + Execute a mapping from the source object to existing destination object with supplied mapping options and explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapping options + Mapped destination object, same instance as the object + + + + Configuration provider for performing maps + + + + + Factory method for creating runtime instances of converters, resolvers etc. + + + + + Project the input queryable. + + Projections are only calculated once and cached + Destination type + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Project the input queryable. + + Destination type to map to + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Add an existing profile + + Profile to add + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add profiles contained in an IEnumerable + + IEnumerable of Profile + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Supply a factory method callback for creating resolvers and type converters + + Factory method + + + + Create a named profile with the supplied configuration + + Profile name, must be unique + Profile configuration + + + + Get the features collection. + + + + + Object mappers + + + + + Advance Configuration + + + + + Custom mapping action + + Source type + Destination type + + + + Implementors can modify both the source and destination objects + + Source object + Destination object + Resolution context + + + + Mapping configuration options for non-generic maps + + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the names of child object properties to map to the destination + + + + + Create a type mapping from the destination to the source type, using the destination members as validation. + + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize individual members + + Name of the member + Callback for configuring member + Itself + + + + Mapping configuration options + + Source type + Destination type + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the child objects to map to the destination + + + + + Customize configuration for a path inside the destination object. + + Expression to the destination sub object + Callback for member options + Itself + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize configuration for individual member + + Expression to the top-level destination member. This must be a member on the TDestination type + Callback for member options + Itself + + + + Customize configuration for individual member. Used when the name isn't known at compile-time + + Destination member name + Callback for member options + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + Destination type to use + + + + Customize configuration for an individual source member + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Transformation expression + Itself + + + + Create a type mapping from the destination to the source type, using the members as validation + + Itself + + + + Common mapping configuration options between generic and non-generic mapping configuration + + Source type + Destination type + Concrete return type for fluent interface + + + + Construct the destination object using the service locator + + Itself + + + + For self-referential types, limit recurse depth. + Enables PreserveReferences. + + Number of levels to limit to + Itself + + + + Preserve object identity. Useful for circular references. + + Itself + + + + Disable constructor validation. During mapping this map is used against an existing destination object and never constructed itself. + + Itself + + + + Value transformers, typically configured through explicit or extenstion methods. + + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action before member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action after member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Specify which member list to validate + + Member list to validate + Itself + + + + Include this configuration in all derived types' maps. Works by scanning all type maps for matches during configuration. + + Itself + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + + + + + Customize configuration for an individual source member. Member name not known until runtime + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Ignores all properties that have either a private or protected setter, forcing the mapper to respect encapsulation (note: order matters, so place this before explicit configuration of any properties with an inaccessible setter) + + Itself + + + + When using ReverseMap, ignores all properties that have either a private or protected setter, keeping the reverse mapping consistent with the forward mapping (note: properties with an inaccessible setter may still be mapped unless IgnoreAllPropertiesWithAnInaccessibleSetter is also used) + + Itself + + + + Supply a custom instantiation expression for the destination type + + Expression to create the destination type given the source object + Itself + + + + Supply a custom instantiation function for the destination type, based on the entire resolution context + + Not used for LINQ projection (ProjectTo) + Callback to create the destination type given the current resolution context + Itself + + + + Customize configuration for individual constructor parameter + + Constructor parameter name + Options + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + + + + + Skip normal member mapping and convert using a instantiated during mapping + Use this method if you need to specify the converter type at runtime + + Type converter type + + + + Skip member mapping and use a custom expression to convert to the destination type + + Callback to convert from source type to destination type + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, including destination object + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, with source, destination and context + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter instance + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter type + + + + Options for a single map operation + + + + + Construct services using this callback. Use this for child/nested containers + + + + + + Add context items to be accessed at map time inside an or + + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Member configuration options + + Source type for this member + Type for this member + Destination type for this map + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + + + Substitute a custom value when the source member resolves as null + + Value to use + + + + Map destination member using a custom value resolver + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom member value resolver supplied with a source member + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + + + + Map destination member using a custom member value resolver supplied from a source member name + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + Source member name + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Map destination member using a custom function. Access both the source and destination object. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, and destination member. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, destination member, and context. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom expression. Used in LINQ projection (ProjectTo). + + Member type of the source member to use + Map expression + + + + Specify the source member to map from. Can only reference a member on the type + + Property name referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Allow this member to be null. This prevents generating a check condition for it. + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + Mapping order value + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + + + Conditionally map this member against the source, destination, source and destination members + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object and the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object, the destination object, and the current resolution context + + + + Ignore this member for LINQ projections unless explicitly expanded during projection + + + + + The destination member being configured. + + + + + Apply a transformation function after any resolved destination member value with the given type + + Transformation expression + + + + Specify a value converter to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + + + + Specify a value converter to convert from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member to supply to the value converter + + + + Specify a value converter to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + + + + Specify a value converter instance from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member name to supply to the value converter + + + + Configuration options for an individual member + + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + Member to supply to value resolver + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Specify a value converter type to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + + + + Specify a value converter type to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Destination member type + Value converter instance + Source member name to supply to the value converter + + + + Defines a naming convention strategy + + + + + Regular expression on how to tokenize a member + + + + + Mapping execution strategy, as a chain of responsibility + + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Builds a mapping expression equivalent to the base Map method + + + + + Source parameter + Destination parameter + ResolutionContext parameter + Map expression + + + + Base class for simple object mappers that don't want to use expressions. + + type of the source + type of the destination + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Performs conversion from source to destination type + + Source object + Destination object + The compile time type of the source object + The compile time type of the destination object + Resolution context + Destination object + + + + Member configuration options + + Source type for this member + Destination type for this map + Type for this member + + + + Specify the source member to map from. Can only reference a member on the type + Any null reference exceptions in this expression will be ignored (similar to flattening behavior) + + Member type of the source member to use + Expression referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Configuration for profile-specific maps + + + + + Disable constructor mapping. Use this if you don't intend to have AutoMapper try to map to constructors + + + + + Creates a mapping configuration from the type to the type + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the type to the type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Create a mapping configuration from the source type to the destination type. + Use this method when the source and destination type are known at runtime and not compile time. + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the source type to the destination type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Clear the list of recognized prefixes. + + + + + Recognize a list of prefixes to be removed from source member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from source member names when matching + + List of postfixes + + + + Provide an alias for a member name when matching source member names + + Original member name + Alias to match against + + + + Provide a new value for a part of a members name + + Original member value + New member value + + + + Recognize a list of prefixes to be removed from destination member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from destination member names when matching + + List of postfixes + + + + Add a property name to globally ignore. Matches against the beginning of the property names. + + Property name to match against + + + + Allow null destination values. If false, destination objects will be created for deep object graphs. Default true. + + + + + Allow null destination collections. If true, null source collections result in null destination collections. Default false. + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Naming convention for source members + + + + + Naming convention for destination members + + + + + Specify common configuration for all type maps. + + configuration callback + + + + Customize configuration for all members across all maps + + Condition + Callback for member options. Use the property map for conditional maps. + + + + Include extension methods against source members for matching destination members to. Default source extension methods from + + Static type that contains extension methods + + + + Value transformers. Modify the list directly or use + + + + + Source member configuration options + + + + + Ignore this member when validating source members, MemberList.Source. + Does not affect validation for the default case, MemberList.Destination. + + + + + Converts source type to destination type instead of normal member mapping + + Source type + Destination type + + + + Performs conversion from source to destination type + + Source object + Destination object + Resolution context + Destination object + + + + Converts a source member value to a destination member value + + Source member type + Destination member type + + + + Perform conversion from source member value to destination member value + + Source member object + Resolution context + Destination member value + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Source member + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Member list to check for configuration validation + + + + + Check that all destination members are mapped + + + + + Check that all source members are mapped + + + + + Check neither source nor destination members, skipping validation + + + + + Provides a named configuration for maps. Naming conventions become scoped per profile. + + + + + Queryable extensions for AutoMapper + + + + + Maps a queryable expression of a source type to a queryable expression of a destination type + + Source type + Destination type + Source queryable + Destination queryable + + Mapped destination queryable + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Expression to project into + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Explicit members to expand + Expression to project into + + + + Projects the source type to the destination type given the mapping configuration + + Destination type to map to + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Expression visitor for making member access null-safe. + + + NullSafeQueryRewriter is copied from the NeinLinq project, licensed under the MIT license. + Copyright (c) 2014-2018 Axel Heer. + See https://github.com/axelheer/nein-linq/blob/master/src/NeinLinq/NullsafeQueryRewriter.cs + + + + + + + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Context information regarding resolution of a destination value + + + + + Mapping operation options + + + + + Context items from + + + + + Current mapper + + + + + Instance cache for resolving circular references + + + + + Instance cache for resolving keeping track of depth + + + + + Contains cached reflection information for easy retrieval + + + + + Main configuration object holding all mapping configuration for a source and destination type + + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Value transformer list + Transformation expression + + + diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Business.dll b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Business.dll new file mode 100644 index 0000000..42e4821 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Business.dll differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb new file mode 100644 index 0000000..75feb9a Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll new file mode 100644 index 0000000..6b03ebf Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb new file mode 100644 index 0000000..b333844 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll new file mode 100644 index 0000000..d8d670f Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb new file mode 100644 index 0000000..dcdb93b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/AvaliacaoMinutoSeguros.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..5583517 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/AvaliacaoMinutoSeguros.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/AvaliacaoMinutoSeguros.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..20d7d06 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,678 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Adds the specified to the . + + The . + The . + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The of s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't been already registered. + + The . + The . + + + + Adds the specified to the if the + service type hasn't been already registered. + + The . + The s. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registing a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registing a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + + + + + Removes all services of type in . + + The . + + + + + Removes all services of type in . + + The . + The service type to remove. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + + + Unable to locate implementation '{0}' for service '{1}'. + + + + + Unable to locate implementation '{0}' for service '{1}'. + + + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + + + No service for type '{0}' has been registered. + + + + + No service for type '{0}' has been registered. + + + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + + + + + + + + + + + + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.CopyComplete b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.CoreCompileInputs.cache b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..1dd7571 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +aca0d137c99a7ed052e192e045ca054f2491783c diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.FileListAbsolute.txt b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..e65e213 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csproj.FileListAbsolute.txt @@ -0,0 +1,18 @@ +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AvaliacaoMinutoSeguros.Business.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AvaliacaoMinutoSeguros.Business.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AutoMapper.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AvaliacaoMinutoSeguros.Domain.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AvaliacaoMinutoSeguros.Domain.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AutoMapper.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AutoMapper.xml +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\obj\Debug\AvaliacaoMinutoSeguros.Business.csprojAssemblyReference.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\obj\Debug\AvaliacaoMinutoSeguros.Business.csproj.CoreCompileInputs.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\obj\Debug\AvaliacaoMinutoSeguros.Business.csproj.CopyComplete +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\obj\Debug\AvaliacaoMinutoSeguros.Business.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\obj\Debug\AvaliacaoMinutoSeguros.Business.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AutoMapper.Extensions.Microsoft.DependencyInjection.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\AutoMapper.Extensions.Microsoft.DependencyInjection.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Business\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.xml diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csprojAssemblyReference.cache b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csprojAssemblyReference.cache new file mode 100644 index 0000000..015a32c Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.csprojAssemblyReference.cache differ diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.dll b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.dll new file mode 100644 index 0000000..42e4821 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.dll differ diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.pdb b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.pdb new file mode 100644 index 0000000..75feb9a Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/obj/Debug/AvaliacaoMinutoSeguros.Business.pdb differ diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/AvaliacaoMinutoSeguros.Business/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..40bd77c Binary files /dev/null and b/AvaliacaoMinutoSeguros.Business/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/AvaliacaoMinutoSeguros.Business/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/AvaliacaoMinutoSeguros.Business/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Business/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/AvaliacaoMinutoSeguros.Business/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Business/packages.config b/AvaliacaoMinutoSeguros.Business/packages.config new file mode 100644 index 0000000..0de34c9 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Business/packages.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Domain/AvaliacaoMinutoSeguros.Domain.csproj b/AvaliacaoMinutoSeguros.Domain/AvaliacaoMinutoSeguros.Domain.csproj new file mode 100644 index 0000000..b843e3e --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/AvaliacaoMinutoSeguros.Domain.csproj @@ -0,0 +1,69 @@ + + + + + Debug + AnyCPU + {9A75E813-824F-4E5E-BE63-7A8007961367} + Library + Properties + AvaliacaoMinutoSeguros.Domain + AvaliacaoMinutoSeguros.Domain + v4.7.2 + 512 + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\AutoMapper.9.0.0\lib\net461\AutoMapper.dll + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424} + AvaliacaoMinutoSeguros.Infra.Helps + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Domain/Entidades/Channel.cs b/AvaliacaoMinutoSeguros.Domain/Entidades/Channel.cs new file mode 100644 index 0000000..3efeaaa --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Entidades/Channel.cs @@ -0,0 +1,30 @@ +using System.Xml.Serialization; +using System.Collections.Generic; + +namespace AvaliacaoMinutoSeguros.Domain.Entidades +{ + [XmlRoot(ElementName = "channel")] + public class Channel + { + [XmlElement(ElementName = "title")] + public string Title { get; set; } + [XmlElement(ElementName = "link", Namespace = "http://www.w3.org/2005/Atom")] + public Link Links { get; set; } + [XmlElement(ElementName = "link")] + public string Link { get; set; } + [XmlElement(ElementName = "description")] + public string Description { get; set; } + [XmlElement(ElementName = "lastBuildDate")] + public string LastBuildDate { get; set; } + [XmlElement(ElementName = "language")] + public string Language { get; set; } + [XmlElement(ElementName = "updatePeriod", Namespace = "http://purl.org/rss/1.0/modules/syndication/")] + public string UpdatePeriod { get; set; } + [XmlElement(ElementName = "updateFrequency", Namespace = "http://purl.org/rss/1.0/modules/syndication/")] + public string UpdateFrequency { get; set; } + [XmlElement(ElementName = "generator")] + public string Generator { get; set; } + [XmlElement(ElementName = "item")] + public List Items { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/Entidades/Guid.cs b/AvaliacaoMinutoSeguros.Domain/Entidades/Guid.cs new file mode 100644 index 0000000..d7a9097 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Entidades/Guid.cs @@ -0,0 +1,13 @@ +using System.Xml.Serialization; + +namespace AvaliacaoMinutoSeguros.Domain.Entidades +{ + [XmlRoot(ElementName = "guid")] + public class Guid + { + [XmlAttribute(AttributeName = "isPermaLink")] + public string IsPermaLink { get; set; } + [XmlText] + public string Text { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/Entidades/Item.cs b/AvaliacaoMinutoSeguros.Domain/Entidades/Item.cs new file mode 100644 index 0000000..2255c12 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Entidades/Item.cs @@ -0,0 +1,30 @@ +using System.Xml.Serialization; +using System.Collections.Generic; + +namespace AvaliacaoMinutoSeguros.Domain.Entidades +{ + [XmlRoot(ElementName = "item")] + public class Item + { + [XmlElement(ElementName = "title")] + public string Title { get; set; } + [XmlElement(ElementName = "link")] + public string Link { get; set; } + [XmlElement(ElementName = "comments")] + public List Comments { get; set; } + [XmlElement(ElementName = "pubDate")] + public string PubDate { get; set; } + [XmlElement(ElementName = "creator", Namespace = "http://purl.org/dc/elements/1.1/")] + public string Creator { get; set; } + [XmlElement(ElementName = "category")] + public List Category { get; set; } + [XmlElement(ElementName = "guid")] + public Guid Guid { get; set; } + [XmlElement(ElementName = "description")] + public string Description { get; set; } + [XmlElement(ElementName = "encoded", Namespace = "http://purl.org/rss/1.0/modules/content/")] + public string Encoded { get; set; } + [XmlElement(ElementName = "commentRss", Namespace = "http://wellformedweb.org/CommentAPI/")] + public string CommentRss { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/Entidades/Link.cs b/AvaliacaoMinutoSeguros.Domain/Entidades/Link.cs new file mode 100644 index 0000000..57b79ab --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Entidades/Link.cs @@ -0,0 +1,16 @@ +using System.Xml.Serialization; +using System.Collections.Generic; + +namespace AvaliacaoMinutoSeguros.Domain.Entidades +{ + [XmlRoot(ElementName = "link", Namespace = "http://www.w3.org/2005/Atom")] + public class Link + { + [XmlAttribute(AttributeName = "href")] + public string Href { get; set; } + [XmlAttribute(AttributeName = "rel")] + public string Rel { get; set; } + [XmlAttribute(AttributeName = "type")] + public string Type { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/Entidades/Rss.cs b/AvaliacaoMinutoSeguros.Domain/Entidades/Rss.cs new file mode 100644 index 0000000..524d0ef --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Entidades/Rss.cs @@ -0,0 +1,29 @@ +using System.Xml.Serialization; + +namespace AvaliacaoMinutoSeguros.Domain.Entidades +{ + /// + /// Classe principal + /// Todas as classes foram geradas no https://xmltocsharp.azurewebsites.net/ + /// + [XmlRoot(ElementName = "rss")] + public class Rss + { + [XmlElement(ElementName = "channel")] + public Channel Channel { get; set; } + [XmlAttribute(AttributeName = "atom", Namespace = "http://www.w3.org/2000/xmlns/")] + public string Atom { get; set; } + [XmlAttribute(AttributeName = "content", Namespace = "http://www.w3.org/2000/xmlns/")] + public string Content { get; set; } + [XmlAttribute(AttributeName = "dc", Namespace = "http://www.w3.org/2000/xmlns/")] + public string Dc { get; set; } + [XmlAttribute(AttributeName = "slash", Namespace = "http://www.w3.org/2000/xmlns/")] + public string Slash { get; set; } + [XmlAttribute(AttributeName = "sy", Namespace = "http://www.w3.org/2000/xmlns/")] + public string Sy { get; set; } + [XmlAttribute(AttributeName = "wfw", Namespace = "http://www.w3.org/2000/xmlns/")] + public string Wfw { get; set; } + [XmlAttribute(AttributeName = "version")] + public string Version { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/Interfaces/Repositorio/IRepositorioRssFeed.cs b/AvaliacaoMinutoSeguros.Domain/Interfaces/Repositorio/IRepositorioRssFeed.cs new file mode 100644 index 0000000..c894974 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Interfaces/Repositorio/IRepositorioRssFeed.cs @@ -0,0 +1,10 @@ +using AvaliacaoMinutoSeguros.Domain.Entidades; + +namespace AvaliacaoMinutoSeguros.Domain.Interfaces.Repositorio +{ + public interface IRepositorioRssFeed + { + Rss ObterRssFeed(string uri); + string ObterHtmlBlog(string urlAddress); + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/Interfaces/Servicos/IServicoRssFeed.cs b/AvaliacaoMinutoSeguros.Domain/Interfaces/Servicos/IServicoRssFeed.cs new file mode 100644 index 0000000..e973182 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Interfaces/Servicos/IServicoRssFeed.cs @@ -0,0 +1,10 @@ +using AutoMapper; +using AvaliacaoMinutoSeguros.Domain.ViewModel; + +namespace AvaliacaoMinutoSeguros.Domain.Interfaces.Servicos +{ + public interface IServicoRssFeed + { + RssFeedViewModel ProcessarRssFeed(string uri, IMapper mapper); + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/Properties/AssemblyInfo.cs b/AvaliacaoMinutoSeguros.Domain/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..5e3d764 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AvaliacaoMinutoSeguros.Domain")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AvaliacaoMinutoSeguros.Domain")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("9a75e813-824f-4e5e-be63-7a8007961367")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AvaliacaoMinutoSeguros.Domain/ViewModel/ItemViewModel.cs b/AvaliacaoMinutoSeguros.Domain/ViewModel/ItemViewModel.cs new file mode 100644 index 0000000..2d97405 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/ViewModel/ItemViewModel.cs @@ -0,0 +1,86 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace AvaliacaoMinutoSeguros.Domain.ViewModel +{ + public class ItemViewModel + { + public string Title { get; set; } + public string Creator { get; set; } + public List Category { get; set; } + public string Link { get; set; } + public string Description { get; set; } + public string Encoded { get; set; } + public DateTime PubDate { get; set; } + + public int TotalPalavrasBlog { get; set; } + public List Palavras { get; set; } + + /// + /// Retorna a quantidade de palavras no texto + /// + /// testo a ser verificado + /// total de palavras + public int TotalPalavras(string texto) + { + return texto.Trim().Split(' ').Count(); + } + + /// + /// Retorna as 10 palavras mais usuadas e a quantidade de vezes que existe no texto + /// + /// texto a ser verificado + /// List + public List ObterPalavrasRepetidas(string texto) + { + List palavrasViewModel = new List(); + + StringBuilder sb = new StringBuilder(""); + foreach (string palavra in texto.Split(' ')) + { + if ((sb.ToString().ToLower().IndexOf(string.Concat("|", palavra, "|"), StringComparison.CurrentCultureIgnoreCase) == -1)) + { + sb.AppendLine(string.Concat("|", palavra, "|")); + } + } + + List result = new List(); + foreach (string palavra in sb.ToString().Split('|')) + { + var _palavra = palavra.Trim(); + if (!string.IsNullOrWhiteSpace(_palavra)) + { + palavrasViewModel.Add(new PalavrasViewModel() + { + Palavra = _palavra, + TotalVezesUsuada = TotalPalavrasRepetidas(texto, _palavra), + }); + } + } + + return palavrasViewModel.OrderByDescending(x => x.TotalVezesUsuada).Take(10).ToList(); + } + + /// + /// Calcular o total de palavras repetidas + /// + /// texto a ser usado + /// palavra a ser verificada + /// + private int TotalPalavrasRepetidas(string texto, string palavra) + { + string[] palavras = texto.Split(' '); + + int count = 0; + for (int i = 0; i < palavras.Length; i++) + { + if (palavra.Equals(palavras[i])) + count++; + } + + return count; + } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/ViewModel/PalavrasViewModel.cs b/AvaliacaoMinutoSeguros.Domain/ViewModel/PalavrasViewModel.cs new file mode 100644 index 0000000..d0316cf --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/ViewModel/PalavrasViewModel.cs @@ -0,0 +1,8 @@ +namespace AvaliacaoMinutoSeguros.Domain.ViewModel +{ + public class PalavrasViewModel + { + public string Palavra { get; set; } + public int TotalVezesUsuada { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/ViewModel/RssFeedViewModel.cs b/AvaliacaoMinutoSeguros.Domain/ViewModel/RssFeedViewModel.cs new file mode 100644 index 0000000..1896ac6 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/ViewModel/RssFeedViewModel.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace AvaliacaoMinutoSeguros.Domain.ViewModel +{ + public class RssFeedViewModel + { + public RssFeedViewModel() + { + Items = new List(); + } + public string Title { get; set; } + public string Link { get; set; } + public string Description { get; set; } + public DateTime LastBuildDate { get; set; } + public List Items { get; set; } + } +} diff --git a/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.dll b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.dll new file mode 100644 index 0000000..79121bd Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.dll differ diff --git a/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.pdb b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.pdb new file mode 100644 index 0000000..a752d87 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.pdb differ diff --git a/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.xml b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.xml new file mode 100644 index 0000000..21057bd --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AutoMapper.xml @@ -0,0 +1,1754 @@ + + + + AutoMapper + + + + + Add Action called against the IConfigurationProvider before it gets sealed + + + + + Add an action to be called when validating the configuration. + + the validation callback + + + + Allow the same map to exist in different profiles. + The default is to throw an exception, true means the maps are merged. + + + + + How many levels deep should AutoMapper try to inline the execution plan for child classes. + See the docs for details. + + + + + Auto map to this destination type from the specified source type. + Discovered during scanning assembly scanning for configuration when calling + + + + + If set to true, construct the destination object using the service locator. + + + + + For self-referential types, limit recurse depth. + + + + + If set to true, preserve object identity. Useful for circular references. + + + + + If set to true, disable constructor validation. + + + + + If set to true, include this configuration in all derived types' maps. + + + + + Skip normal member mapping and convert using a instantiated during mapping. + + + + + Ignore this member for configuration validation and skip during mapping. + + + Must be used in combination with + + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + Must be used in combination with + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + + Must be used in combination with + + + + + Substitute a custom value when the source member resolves as null + + + Must be used in combination with + + + + + Value to use if source value is null + + + + + Specify the source member to map from. Can only reference a member on the type + + + Must be used in combination with + + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + Must be used in combination with + + + + + Specify a value converter type to convert from the matching source member to the destination member + Use with to specify a separate source member to supply to the value converter + + + Must be used in combination with + + + + + type + + + + + Map destination member using a custom value resolver. + Use with to specify an type. + + + Must be used in combination with + + + + + or type + + + + + Contains profile-specific configuration + + + + + Source extension methods included for search + + + + + Specify which properties should be mapped. + By default only public properties are mapped. + + + + + Specify which fields should be mapped. + By default only public fields are mapped. + + + + + Specify which methods, of those that are eligible (public, parameterless, and non-static or extension methods), should be mapped. + By default all eligible methods are mapped. + + + + + Specify which constructors should be considered for the destination objects. + By default all constructors are considered. + + + + + Contains member configuration relating to source members + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Member maps with default values. Used in dynamic/dictionary scenarios when source/destination members do not exist. + + + + + Gets the feature of type . + + The type of the feature. + The feature or null if feature not exists. + + + + Add or update the feature. Existing feature of the same type will be replaced. + + The feature. + + + + Get all configured type maps created + + All configured type maps + + + + Find the for the configured source and destination type + + Configured source type + Configured destination type + Type map configuration + + + + Find the for the configured type pair + + Type pair + Type map configuration + + + + Find the for the configured source and destination type + + Source type + Destination type + Type map configuration + + + + Resolve the for the configured source and destination type, checking parent types + + Configured source type + Configured destination type + Type map configuration + + + + Resolve the for the configured type pair, checking parent types + + Type pair + Type map configuration + + + + Dry run all configured type maps and throw for each problem + + + + + Dry run single type map + + Type map to check + + + + Dry run all type maps in given profile + + Profile name of type maps to test + + + + Dry run all type maps in given profile + + Profile type + + + + Get all configured mappers + + List of mappers + + + + Gets the features collection. + + The feature colection. + + + + Find a matching object mapper. + + the types to match + the matching mapper or null + + + + Factory method to create formatters, resolvers and type converters + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Create a mapper instance based on this configuration. Mapper instances are lightweight and can be created as needed. + + The mapper instance + + + + Create a mapper instance with the specified service constructor to be used for resolvers and type converters. + + Service factory to create services + The mapper instance + + + + Compile all underlying mapping expressions to cached delegates. + Use if you want AutoMapper to compile all mappings up front instead of deferring expression compilation for each first map. + + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + the runtime type of the source object + the runtime type of the destination object + the execution plan + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + The source/destination map request + the execution plan + + + + Map constructor parameter from member expression + + Member type + Member expression + + + + Map constructor parameter from custom func that has access to + + Not used for LINQ projection (ProjectTo) + Custom func + + + + Ignore this member for validation and skip during mapping + + + + + Execute a mapping from the source object to a new destination object. + The source type is inferred from the source object. + + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to a new destination object. + + Source type to use, regardless of the runtime type + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Source type to use + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to the existing destination object. + + Source type to use + Destination type + Source object to map from + Destination object to map into + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to the existing destination object with supplied mapping options. + + Source type to use + Destination type + Source object to map from + Destination object to map into + Mapping options + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to a new destination object with explicit objects + + Source object to map from + Source type to use + Destination type to create + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with explicit objects and supplied mapping options. + + Source object to map from + Source type to use + Destination type to create + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to existing destination object with explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapped destination object, same instance as the object + + + + Execute a mapping from the source object to existing destination object with supplied mapping options and explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapping options + Mapped destination object, same instance as the object + + + + Configuration provider for performing maps + + + + + Factory method for creating runtime instances of converters, resolvers etc. + + + + + Project the input queryable. + + Projections are only calculated once and cached + Destination type + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Project the input queryable. + + Destination type to map to + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Add an existing profile + + Profile to add + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add profiles contained in an IEnumerable + + IEnumerable of Profile + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Supply a factory method callback for creating resolvers and type converters + + Factory method + + + + Create a named profile with the supplied configuration + + Profile name, must be unique + Profile configuration + + + + Get the features collection. + + + + + Object mappers + + + + + Advance Configuration + + + + + Custom mapping action + + Source type + Destination type + + + + Implementors can modify both the source and destination objects + + Source object + Destination object + Resolution context + + + + Mapping configuration options for non-generic maps + + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the names of child object properties to map to the destination + + + + + Create a type mapping from the destination to the source type, using the destination members as validation. + + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize individual members + + Name of the member + Callback for configuring member + Itself + + + + Mapping configuration options + + Source type + Destination type + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the child objects to map to the destination + + + + + Customize configuration for a path inside the destination object. + + Expression to the destination sub object + Callback for member options + Itself + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize configuration for individual member + + Expression to the top-level destination member. This must be a member on the TDestination type + Callback for member options + Itself + + + + Customize configuration for individual member. Used when the name isn't known at compile-time + + Destination member name + Callback for member options + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + Destination type to use + + + + Customize configuration for an individual source member + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Transformation expression + Itself + + + + Create a type mapping from the destination to the source type, using the members as validation + + Itself + + + + Common mapping configuration options between generic and non-generic mapping configuration + + Source type + Destination type + Concrete return type for fluent interface + + + + Construct the destination object using the service locator + + Itself + + + + For self-referential types, limit recurse depth. + Enables PreserveReferences. + + Number of levels to limit to + Itself + + + + Preserve object identity. Useful for circular references. + + Itself + + + + Disable constructor validation. During mapping this map is used against an existing destination object and never constructed itself. + + Itself + + + + Value transformers, typically configured through explicit or extenstion methods. + + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action before member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action after member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Specify which member list to validate + + Member list to validate + Itself + + + + Include this configuration in all derived types' maps. Works by scanning all type maps for matches during configuration. + + Itself + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + + + + + Customize configuration for an individual source member. Member name not known until runtime + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Ignores all properties that have either a private or protected setter, forcing the mapper to respect encapsulation (note: order matters, so place this before explicit configuration of any properties with an inaccessible setter) + + Itself + + + + When using ReverseMap, ignores all properties that have either a private or protected setter, keeping the reverse mapping consistent with the forward mapping (note: properties with an inaccessible setter may still be mapped unless IgnoreAllPropertiesWithAnInaccessibleSetter is also used) + + Itself + + + + Supply a custom instantiation expression for the destination type + + Expression to create the destination type given the source object + Itself + + + + Supply a custom instantiation function for the destination type, based on the entire resolution context + + Not used for LINQ projection (ProjectTo) + Callback to create the destination type given the current resolution context + Itself + + + + Customize configuration for individual constructor parameter + + Constructor parameter name + Options + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + + + + + Skip normal member mapping and convert using a instantiated during mapping + Use this method if you need to specify the converter type at runtime + + Type converter type + + + + Skip member mapping and use a custom expression to convert to the destination type + + Callback to convert from source type to destination type + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, including destination object + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, with source, destination and context + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter instance + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter type + + + + Options for a single map operation + + + + + Construct services using this callback. Use this for child/nested containers + + + + + + Add context items to be accessed at map time inside an or + + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Member configuration options + + Source type for this member + Type for this member + Destination type for this map + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + + + Substitute a custom value when the source member resolves as null + + Value to use + + + + Map destination member using a custom value resolver + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom member value resolver supplied with a source member + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + + + + Map destination member using a custom member value resolver supplied from a source member name + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + Source member name + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Map destination member using a custom function. Access both the source and destination object. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, and destination member. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, destination member, and context. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom expression. Used in LINQ projection (ProjectTo). + + Member type of the source member to use + Map expression + + + + Specify the source member to map from. Can only reference a member on the type + + Property name referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Allow this member to be null. This prevents generating a check condition for it. + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + Mapping order value + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + + + Conditionally map this member against the source, destination, source and destination members + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object and the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object, the destination object, and the current resolution context + + + + Ignore this member for LINQ projections unless explicitly expanded during projection + + + + + The destination member being configured. + + + + + Apply a transformation function after any resolved destination member value with the given type + + Transformation expression + + + + Specify a value converter to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + + + + Specify a value converter to convert from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member to supply to the value converter + + + + Specify a value converter to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + + + + Specify a value converter instance from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member name to supply to the value converter + + + + Configuration options for an individual member + + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + Member to supply to value resolver + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Specify a value converter type to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + + + + Specify a value converter type to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Destination member type + Value converter instance + Source member name to supply to the value converter + + + + Defines a naming convention strategy + + + + + Regular expression on how to tokenize a member + + + + + Mapping execution strategy, as a chain of responsibility + + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Builds a mapping expression equivalent to the base Map method + + + + + Source parameter + Destination parameter + ResolutionContext parameter + Map expression + + + + Base class for simple object mappers that don't want to use expressions. + + type of the source + type of the destination + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Performs conversion from source to destination type + + Source object + Destination object + The compile time type of the source object + The compile time type of the destination object + Resolution context + Destination object + + + + Member configuration options + + Source type for this member + Destination type for this map + Type for this member + + + + Specify the source member to map from. Can only reference a member on the type + Any null reference exceptions in this expression will be ignored (similar to flattening behavior) + + Member type of the source member to use + Expression referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Configuration for profile-specific maps + + + + + Disable constructor mapping. Use this if you don't intend to have AutoMapper try to map to constructors + + + + + Creates a mapping configuration from the type to the type + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the type to the type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Create a mapping configuration from the source type to the destination type. + Use this method when the source and destination type are known at runtime and not compile time. + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the source type to the destination type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Clear the list of recognized prefixes. + + + + + Recognize a list of prefixes to be removed from source member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from source member names when matching + + List of postfixes + + + + Provide an alias for a member name when matching source member names + + Original member name + Alias to match against + + + + Provide a new value for a part of a members name + + Original member value + New member value + + + + Recognize a list of prefixes to be removed from destination member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from destination member names when matching + + List of postfixes + + + + Add a property name to globally ignore. Matches against the beginning of the property names. + + Property name to match against + + + + Allow null destination values. If false, destination objects will be created for deep object graphs. Default true. + + + + + Allow null destination collections. If true, null source collections result in null destination collections. Default false. + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Naming convention for source members + + + + + Naming convention for destination members + + + + + Specify common configuration for all type maps. + + configuration callback + + + + Customize configuration for all members across all maps + + Condition + Callback for member options. Use the property map for conditional maps. + + + + Include extension methods against source members for matching destination members to. Default source extension methods from + + Static type that contains extension methods + + + + Value transformers. Modify the list directly or use + + + + + Source member configuration options + + + + + Ignore this member when validating source members, MemberList.Source. + Does not affect validation for the default case, MemberList.Destination. + + + + + Converts source type to destination type instead of normal member mapping + + Source type + Destination type + + + + Performs conversion from source to destination type + + Source object + Destination object + Resolution context + Destination object + + + + Converts a source member value to a destination member value + + Source member type + Destination member type + + + + Perform conversion from source member value to destination member value + + Source member object + Resolution context + Destination member value + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Source member + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Member list to check for configuration validation + + + + + Check that all destination members are mapped + + + + + Check that all source members are mapped + + + + + Check neither source nor destination members, skipping validation + + + + + Provides a named configuration for maps. Naming conventions become scoped per profile. + + + + + Queryable extensions for AutoMapper + + + + + Maps a queryable expression of a source type to a queryable expression of a destination type + + Source type + Destination type + Source queryable + Destination queryable + + Mapped destination queryable + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Expression to project into + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Explicit members to expand + Expression to project into + + + + Projects the source type to the destination type given the mapping configuration + + Destination type to map to + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Expression visitor for making member access null-safe. + + + NullSafeQueryRewriter is copied from the NeinLinq project, licensed under the MIT license. + Copyright (c) 2014-2018 Axel Heer. + See https://github.com/axelheer/nein-linq/blob/master/src/NeinLinq/NullsafeQueryRewriter.cs + + + + + + + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Context information regarding resolution of a destination value + + + + + Mapping operation options + + + + + Context items from + + + + + Current mapper + + + + + Instance cache for resolving circular references + + + + + Instance cache for resolving keeping track of depth + + + + + Contains cached reflection information for easy retrieval + + + + + Main configuration object holding all mapping configuration for a source and destination type + + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Value transformer list + Transformation expression + + + diff --git a/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll new file mode 100644 index 0000000..6b03ebf Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll differ diff --git a/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb new file mode 100644 index 0000000..b333844 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb differ diff --git a/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll new file mode 100644 index 0000000..d8d670f Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll differ diff --git a/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb new file mode 100644 index 0000000..dcdb93b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb differ diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.CopyComplete b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.CoreCompileInputs.cache b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..cea467f --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +770636e5bf1696e0fdf103d0907290772ed0b833 diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.FileListAbsolute.txt b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..752d196 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csproj.FileListAbsolute.txt @@ -0,0 +1,12 @@ +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\bin\Debug\AvaliacaoMinutoSeguros.Domain.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\bin\Debug\AvaliacaoMinutoSeguros.Domain.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\obj\Debug\AvaliacaoMinutoSeguros.Domain.csprojAssemblyReference.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\obj\Debug\AvaliacaoMinutoSeguros.Domain.csproj.CoreCompileInputs.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\obj\Debug\AvaliacaoMinutoSeguros.Domain.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\obj\Debug\AvaliacaoMinutoSeguros.Domain.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\bin\Debug\AutoMapper.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\bin\Debug\AutoMapper.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\bin\Debug\AutoMapper.xml +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\obj\Debug\AvaliacaoMinutoSeguros.Domain.csproj.CopyComplete +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Domain\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.pdb diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csprojAssemblyReference.cache b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csprojAssemblyReference.cache new file mode 100644 index 0000000..2bb8896 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.csprojAssemblyReference.cache differ diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.dll b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.dll new file mode 100644 index 0000000..6b03ebf Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.dll differ diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.pdb b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.pdb new file mode 100644 index 0000000..b333844 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/obj/Debug/AvaliacaoMinutoSeguros.Domain.pdb differ diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/AvaliacaoMinutoSeguros.Domain/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..b3dcbdb Binary files /dev/null and b/AvaliacaoMinutoSeguros.Domain/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/AvaliacaoMinutoSeguros.Domain/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/AvaliacaoMinutoSeguros.Domain/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Domain/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/AvaliacaoMinutoSeguros.Domain/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Domain/packages.config b/AvaliacaoMinutoSeguros.Domain/packages.config new file mode 100644 index 0000000..2aa51aa --- /dev/null +++ b/AvaliacaoMinutoSeguros.Domain/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Infra.Data/AvaliacaoMinutoSeguros.Infra.Data.csproj b/AvaliacaoMinutoSeguros.Infra.Data/AvaliacaoMinutoSeguros.Infra.Data.csproj new file mode 100644 index 0000000..afa2a71 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Data/AvaliacaoMinutoSeguros.Infra.Data.csproj @@ -0,0 +1,54 @@ + + + + + Debug + AnyCPU + {0E3CE559-08B4-431B-9E90-EF2EBAC396FC} + Library + Properties + AvaliacaoMinutoSeguros.Infra.Data + AvaliacaoMinutoSeguros.Infra.Data + v4.7.2 + 512 + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + {9A75E813-824F-4E5E-BE63-7A8007961367} + AvaliacaoMinutoSeguros.Domain + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Infra.Data/Properties/AssemblyInfo.cs b/AvaliacaoMinutoSeguros.Infra.Data/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..e5fc015 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Data/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AvaliacaoMinutoSeguros.Infra.Data")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AvaliacaoMinutoSeguros.Infra.Data")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("0e3ce559-08b4-431b-9e90-ef2ebac396fc")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AvaliacaoMinutoSeguros.Infra.Data/RepositorioRssFeed.cs b/AvaliacaoMinutoSeguros.Infra.Data/RepositorioRssFeed.cs new file mode 100644 index 0000000..5dbfadd --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Data/RepositorioRssFeed.cs @@ -0,0 +1,54 @@ +using AvaliacaoMinutoSeguros.Domain.Entidades; +using AvaliacaoMinutoSeguros.Domain.Interfaces.Repositorio; +using System; +using System.IO; +using System.Net; +using System.Net.Http; +using System.Text; +using System.Xml.Serialization; + +namespace AvaliacaoMinutoSeguros.Infra.Data +{ + public class RepositorioRssFeed : IRepositorioRssFeed + { + public Rss ObterRssFeed(string uri) + { + try + { + var client = new HttpClient(); + var rss = client.GetStreamAsync(uri).Result; + var serializer = new XmlSerializer(typeof(Rss)); + return (Rss)serializer.Deserialize(rss); + } + catch (Exception) + { + throw; + } + } + + public string ObterHtmlBlog(string urlAddress) + { + string data = ""; + + HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlAddress); + HttpWebResponse response = (HttpWebResponse)request.GetResponse(); + + if (response.StatusCode == HttpStatusCode.OK) + { + Stream receiveStream = response.GetResponseStream(); + StreamReader readStream = null; + + if (String.IsNullOrWhiteSpace(response.CharacterSet)) + readStream = new StreamReader(receiveStream); + else + readStream = new StreamReader(receiveStream, Encoding.GetEncoding(response.CharacterSet)); + + data = readStream.ReadToEnd(); + + response.Close(); + readStream.Close(); + } + return data; + } + } +} diff --git a/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.dll b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.dll new file mode 100644 index 0000000..79121bd Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.pdb b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.pdb new file mode 100644 index 0000000..a752d87 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.xml b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.xml new file mode 100644 index 0000000..21057bd --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AutoMapper.xml @@ -0,0 +1,1754 @@ + + + + AutoMapper + + + + + Add Action called against the IConfigurationProvider before it gets sealed + + + + + Add an action to be called when validating the configuration. + + the validation callback + + + + Allow the same map to exist in different profiles. + The default is to throw an exception, true means the maps are merged. + + + + + How many levels deep should AutoMapper try to inline the execution plan for child classes. + See the docs for details. + + + + + Auto map to this destination type from the specified source type. + Discovered during scanning assembly scanning for configuration when calling + + + + + If set to true, construct the destination object using the service locator. + + + + + For self-referential types, limit recurse depth. + + + + + If set to true, preserve object identity. Useful for circular references. + + + + + If set to true, disable constructor validation. + + + + + If set to true, include this configuration in all derived types' maps. + + + + + Skip normal member mapping and convert using a instantiated during mapping. + + + + + Ignore this member for configuration validation and skip during mapping. + + + Must be used in combination with + + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + Must be used in combination with + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + + Must be used in combination with + + + + + Substitute a custom value when the source member resolves as null + + + Must be used in combination with + + + + + Value to use if source value is null + + + + + Specify the source member to map from. Can only reference a member on the type + + + Must be used in combination with + + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + Must be used in combination with + + + + + Specify a value converter type to convert from the matching source member to the destination member + Use with to specify a separate source member to supply to the value converter + + + Must be used in combination with + + + + + type + + + + + Map destination member using a custom value resolver. + Use with to specify an type. + + + Must be used in combination with + + + + + or type + + + + + Contains profile-specific configuration + + + + + Source extension methods included for search + + + + + Specify which properties should be mapped. + By default only public properties are mapped. + + + + + Specify which fields should be mapped. + By default only public fields are mapped. + + + + + Specify which methods, of those that are eligible (public, parameterless, and non-static or extension methods), should be mapped. + By default all eligible methods are mapped. + + + + + Specify which constructors should be considered for the destination objects. + By default all constructors are considered. + + + + + Contains member configuration relating to source members + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Member maps with default values. Used in dynamic/dictionary scenarios when source/destination members do not exist. + + + + + Gets the feature of type . + + The type of the feature. + The feature or null if feature not exists. + + + + Add or update the feature. Existing feature of the same type will be replaced. + + The feature. + + + + Get all configured type maps created + + All configured type maps + + + + Find the for the configured source and destination type + + Configured source type + Configured destination type + Type map configuration + + + + Find the for the configured type pair + + Type pair + Type map configuration + + + + Find the for the configured source and destination type + + Source type + Destination type + Type map configuration + + + + Resolve the for the configured source and destination type, checking parent types + + Configured source type + Configured destination type + Type map configuration + + + + Resolve the for the configured type pair, checking parent types + + Type pair + Type map configuration + + + + Dry run all configured type maps and throw for each problem + + + + + Dry run single type map + + Type map to check + + + + Dry run all type maps in given profile + + Profile name of type maps to test + + + + Dry run all type maps in given profile + + Profile type + + + + Get all configured mappers + + List of mappers + + + + Gets the features collection. + + The feature colection. + + + + Find a matching object mapper. + + the types to match + the matching mapper or null + + + + Factory method to create formatters, resolvers and type converters + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Create a mapper instance based on this configuration. Mapper instances are lightweight and can be created as needed. + + The mapper instance + + + + Create a mapper instance with the specified service constructor to be used for resolvers and type converters. + + Service factory to create services + The mapper instance + + + + Compile all underlying mapping expressions to cached delegates. + Use if you want AutoMapper to compile all mappings up front instead of deferring expression compilation for each first map. + + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + the runtime type of the source object + the runtime type of the destination object + the execution plan + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + The source/destination map request + the execution plan + + + + Map constructor parameter from member expression + + Member type + Member expression + + + + Map constructor parameter from custom func that has access to + + Not used for LINQ projection (ProjectTo) + Custom func + + + + Ignore this member for validation and skip during mapping + + + + + Execute a mapping from the source object to a new destination object. + The source type is inferred from the source object. + + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to a new destination object. + + Source type to use, regardless of the runtime type + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Source type to use + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to the existing destination object. + + Source type to use + Destination type + Source object to map from + Destination object to map into + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to the existing destination object with supplied mapping options. + + Source type to use + Destination type + Source object to map from + Destination object to map into + Mapping options + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to a new destination object with explicit objects + + Source object to map from + Source type to use + Destination type to create + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with explicit objects and supplied mapping options. + + Source object to map from + Source type to use + Destination type to create + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to existing destination object with explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapped destination object, same instance as the object + + + + Execute a mapping from the source object to existing destination object with supplied mapping options and explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapping options + Mapped destination object, same instance as the object + + + + Configuration provider for performing maps + + + + + Factory method for creating runtime instances of converters, resolvers etc. + + + + + Project the input queryable. + + Projections are only calculated once and cached + Destination type + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Project the input queryable. + + Destination type to map to + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Add an existing profile + + Profile to add + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add profiles contained in an IEnumerable + + IEnumerable of Profile + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Supply a factory method callback for creating resolvers and type converters + + Factory method + + + + Create a named profile with the supplied configuration + + Profile name, must be unique + Profile configuration + + + + Get the features collection. + + + + + Object mappers + + + + + Advance Configuration + + + + + Custom mapping action + + Source type + Destination type + + + + Implementors can modify both the source and destination objects + + Source object + Destination object + Resolution context + + + + Mapping configuration options for non-generic maps + + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the names of child object properties to map to the destination + + + + + Create a type mapping from the destination to the source type, using the destination members as validation. + + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize individual members + + Name of the member + Callback for configuring member + Itself + + + + Mapping configuration options + + Source type + Destination type + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the child objects to map to the destination + + + + + Customize configuration for a path inside the destination object. + + Expression to the destination sub object + Callback for member options + Itself + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize configuration for individual member + + Expression to the top-level destination member. This must be a member on the TDestination type + Callback for member options + Itself + + + + Customize configuration for individual member. Used when the name isn't known at compile-time + + Destination member name + Callback for member options + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + Destination type to use + + + + Customize configuration for an individual source member + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Transformation expression + Itself + + + + Create a type mapping from the destination to the source type, using the members as validation + + Itself + + + + Common mapping configuration options between generic and non-generic mapping configuration + + Source type + Destination type + Concrete return type for fluent interface + + + + Construct the destination object using the service locator + + Itself + + + + For self-referential types, limit recurse depth. + Enables PreserveReferences. + + Number of levels to limit to + Itself + + + + Preserve object identity. Useful for circular references. + + Itself + + + + Disable constructor validation. During mapping this map is used against an existing destination object and never constructed itself. + + Itself + + + + Value transformers, typically configured through explicit or extenstion methods. + + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action before member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action after member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Specify which member list to validate + + Member list to validate + Itself + + + + Include this configuration in all derived types' maps. Works by scanning all type maps for matches during configuration. + + Itself + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + + + + + Customize configuration for an individual source member. Member name not known until runtime + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Ignores all properties that have either a private or protected setter, forcing the mapper to respect encapsulation (note: order matters, so place this before explicit configuration of any properties with an inaccessible setter) + + Itself + + + + When using ReverseMap, ignores all properties that have either a private or protected setter, keeping the reverse mapping consistent with the forward mapping (note: properties with an inaccessible setter may still be mapped unless IgnoreAllPropertiesWithAnInaccessibleSetter is also used) + + Itself + + + + Supply a custom instantiation expression for the destination type + + Expression to create the destination type given the source object + Itself + + + + Supply a custom instantiation function for the destination type, based on the entire resolution context + + Not used for LINQ projection (ProjectTo) + Callback to create the destination type given the current resolution context + Itself + + + + Customize configuration for individual constructor parameter + + Constructor parameter name + Options + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + + + + + Skip normal member mapping and convert using a instantiated during mapping + Use this method if you need to specify the converter type at runtime + + Type converter type + + + + Skip member mapping and use a custom expression to convert to the destination type + + Callback to convert from source type to destination type + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, including destination object + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, with source, destination and context + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter instance + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter type + + + + Options for a single map operation + + + + + Construct services using this callback. Use this for child/nested containers + + + + + + Add context items to be accessed at map time inside an or + + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Member configuration options + + Source type for this member + Type for this member + Destination type for this map + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + + + Substitute a custom value when the source member resolves as null + + Value to use + + + + Map destination member using a custom value resolver + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom member value resolver supplied with a source member + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + + + + Map destination member using a custom member value resolver supplied from a source member name + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + Source member name + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Map destination member using a custom function. Access both the source and destination object. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, and destination member. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, destination member, and context. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom expression. Used in LINQ projection (ProjectTo). + + Member type of the source member to use + Map expression + + + + Specify the source member to map from. Can only reference a member on the type + + Property name referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Allow this member to be null. This prevents generating a check condition for it. + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + Mapping order value + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + + + Conditionally map this member against the source, destination, source and destination members + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object and the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object, the destination object, and the current resolution context + + + + Ignore this member for LINQ projections unless explicitly expanded during projection + + + + + The destination member being configured. + + + + + Apply a transformation function after any resolved destination member value with the given type + + Transformation expression + + + + Specify a value converter to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + + + + Specify a value converter to convert from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member to supply to the value converter + + + + Specify a value converter to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + + + + Specify a value converter instance from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member name to supply to the value converter + + + + Configuration options for an individual member + + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + Member to supply to value resolver + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Specify a value converter type to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + + + + Specify a value converter type to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Destination member type + Value converter instance + Source member name to supply to the value converter + + + + Defines a naming convention strategy + + + + + Regular expression on how to tokenize a member + + + + + Mapping execution strategy, as a chain of responsibility + + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Builds a mapping expression equivalent to the base Map method + + + + + Source parameter + Destination parameter + ResolutionContext parameter + Map expression + + + + Base class for simple object mappers that don't want to use expressions. + + type of the source + type of the destination + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Performs conversion from source to destination type + + Source object + Destination object + The compile time type of the source object + The compile time type of the destination object + Resolution context + Destination object + + + + Member configuration options + + Source type for this member + Destination type for this map + Type for this member + + + + Specify the source member to map from. Can only reference a member on the type + Any null reference exceptions in this expression will be ignored (similar to flattening behavior) + + Member type of the source member to use + Expression referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Configuration for profile-specific maps + + + + + Disable constructor mapping. Use this if you don't intend to have AutoMapper try to map to constructors + + + + + Creates a mapping configuration from the type to the type + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the type to the type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Create a mapping configuration from the source type to the destination type. + Use this method when the source and destination type are known at runtime and not compile time. + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the source type to the destination type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Clear the list of recognized prefixes. + + + + + Recognize a list of prefixes to be removed from source member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from source member names when matching + + List of postfixes + + + + Provide an alias for a member name when matching source member names + + Original member name + Alias to match against + + + + Provide a new value for a part of a members name + + Original member value + New member value + + + + Recognize a list of prefixes to be removed from destination member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from destination member names when matching + + List of postfixes + + + + Add a property name to globally ignore. Matches against the beginning of the property names. + + Property name to match against + + + + Allow null destination values. If false, destination objects will be created for deep object graphs. Default true. + + + + + Allow null destination collections. If true, null source collections result in null destination collections. Default false. + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Naming convention for source members + + + + + Naming convention for destination members + + + + + Specify common configuration for all type maps. + + configuration callback + + + + Customize configuration for all members across all maps + + Condition + Callback for member options. Use the property map for conditional maps. + + + + Include extension methods against source members for matching destination members to. Default source extension methods from + + Static type that contains extension methods + + + + Value transformers. Modify the list directly or use + + + + + Source member configuration options + + + + + Ignore this member when validating source members, MemberList.Source. + Does not affect validation for the default case, MemberList.Destination. + + + + + Converts source type to destination type instead of normal member mapping + + Source type + Destination type + + + + Performs conversion from source to destination type + + Source object + Destination object + Resolution context + Destination object + + + + Converts a source member value to a destination member value + + Source member type + Destination member type + + + + Perform conversion from source member value to destination member value + + Source member object + Resolution context + Destination member value + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Source member + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Member list to check for configuration validation + + + + + Check that all destination members are mapped + + + + + Check that all source members are mapped + + + + + Check neither source nor destination members, skipping validation + + + + + Provides a named configuration for maps. Naming conventions become scoped per profile. + + + + + Queryable extensions for AutoMapper + + + + + Maps a queryable expression of a source type to a queryable expression of a destination type + + Source type + Destination type + Source queryable + Destination queryable + + Mapped destination queryable + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Expression to project into + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Explicit members to expand + Expression to project into + + + + Projects the source type to the destination type given the mapping configuration + + Destination type to map to + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Expression visitor for making member access null-safe. + + + NullSafeQueryRewriter is copied from the NeinLinq project, licensed under the MIT license. + Copyright (c) 2014-2018 Axel Heer. + See https://github.com/axelheer/nein-linq/blob/master/src/NeinLinq/NullsafeQueryRewriter.cs + + + + + + + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Context information regarding resolution of a destination value + + + + + Mapping operation options + + + + + Context items from + + + + + Current mapper + + + + + Instance cache for resolving circular references + + + + + Instance cache for resolving keeping track of depth + + + + + Contains cached reflection information for easy retrieval + + + + + Main configuration object holding all mapping configuration for a source and destination type + + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Value transformer list + Transformation expression + + + diff --git a/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll new file mode 100644 index 0000000..6b03ebf Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb new file mode 100644 index 0000000..b333844 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll new file mode 100644 index 0000000..3e685d4 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb new file mode 100644 index 0000000..aa7762b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.CopyComplete b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.CoreCompileInputs.cache b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..9df8ab7 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +7ebbe67f9d48b4ad8e1b5f3f3e97dd29c2fecdf1 diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.FileListAbsolute.txt b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..35f1d01 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csproj.FileListAbsolute.txt @@ -0,0 +1,12 @@ +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\bin\Debug\AvaliacaoMinutoSeguros.Infra.Data.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\bin\Debug\AvaliacaoMinutoSeguros.Infra.Data.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\bin\Debug\AvaliacaoMinutoSeguros.Domain.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\bin\Debug\AvaliacaoMinutoSeguros.Domain.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\obj\Debug\AvaliacaoMinutoSeguros.Infra.Data.csprojAssemblyReference.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\obj\Debug\AvaliacaoMinutoSeguros.Infra.Data.csproj.CoreCompileInputs.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\obj\Debug\AvaliacaoMinutoSeguros.Infra.Data.csproj.CopyComplete +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\obj\Debug\AvaliacaoMinutoSeguros.Infra.Data.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\obj\Debug\AvaliacaoMinutoSeguros.Infra.Data.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\bin\Debug\AutoMapper.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\bin\Debug\AutoMapper.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Data\bin\Debug\AutoMapper.xml diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csprojAssemblyReference.cache b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csprojAssemblyReference.cache new file mode 100644 index 0000000..2e789ea Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.csprojAssemblyReference.cache differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll new file mode 100644 index 0000000..3e685d4 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb new file mode 100644 index 0000000..aa7762b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..d4d3da6 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/AvaliacaoMinutoSeguros.Infra.Data/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/AvaliacaoMinutoSeguros.Infra.Helps.csproj b/AvaliacaoMinutoSeguros.Infra.Helps/AvaliacaoMinutoSeguros.Infra.Helps.csproj new file mode 100644 index 0000000..653cbe2 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Helps/AvaliacaoMinutoSeguros.Infra.Helps.csproj @@ -0,0 +1,48 @@ + + + + + Debug + AnyCPU + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424} + Library + Properties + AvaliacaoMinutoSeguros.Infra.Helps + AvaliacaoMinutoSeguros.Infra.Helps + v4.7.2 + 512 + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/Properties/AssemblyInfo.cs b/AvaliacaoMinutoSeguros.Infra.Helps/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..6d008e6 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Helps/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AvaliacaoMinutoSeguros.Infra.Helps")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AvaliacaoMinutoSeguros.Infra.Helps")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("c2af061d-f5fc-4ad9-9481-04acba0dc424")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/StringHelpers.cs b/AvaliacaoMinutoSeguros.Infra.Helps/StringHelpers.cs new file mode 100644 index 0000000..d71a99c --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Helps/StringHelpers.cs @@ -0,0 +1,73 @@ +using System; +using System.Linq; +using System.Text.RegularExpressions; + +namespace AvaliacaoMinutoSeguros.Infra.Helps +{ + public static class StringHelpers + { + public readonly static string[] ARTIGOS_PREPOSICOES = + { + " a ", " com ", " as ", " o ", " os ", " uma ", " um ", " uns ", " em ", " de ", " do ", " como ", " para ", " ao ", " aos ", + " por ", " à ", " sem ", " após ", " até ", " nas ", " num ", " nessa ", " pelo ", " pelas "," contra ", " aonde ", " umas ", + " desde ", " entre ", " perante ", " sob ", " sobre ", " trás ", " afora ", " conforme ", " consoante ", " durante ", " exceto ", + " feito ", " fora ", " mediante ", " menos ", " salvo ", " segundo ", " senão ", " tirante ", " visto ", " ante ", " duma ", + " àquele ", " aquele ", " duma ", " disto ", + }; + + public static string RemoverTagsHtml(string texto) + { + return Regex.Replace(texto, "<.*?>", string.Empty); + } + + public static string RemoverPontuacao(string texto) + { + return texto.Replace(",", "") + .Replace(".", "") + .Replace(";", "") + .Replace("!", "!") + .Replace("?", "") + .Replace(":", "") + .Replace(@"/", "") + .Replace(@"\", "") + .Replace("(", "") + .Replace(")", ""); + } + + public static string RemoverArtigosEPreposicoes(string texto) + { + try + { + foreach (string artPrep in ARTIGOS_PREPOSICOES) + { + texto = texto.Replace(artPrep, " "); + } + + return texto; + } + catch (Exception) + { + + throw; + } + } + + public static string RemoverEspacos(string texto) + { + try + { + while (texto.Contains(" ")) + { + texto = texto.Replace(" ", " "); + } + + return texto; + } + catch (Exception) + { + + throw; + } + } + } +} diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll b/AvaliacaoMinutoSeguros.Infra.Helps/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll new file mode 100644 index 0000000..d8d670f Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Helps/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb b/AvaliacaoMinutoSeguros.Infra.Helps/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb new file mode 100644 index 0000000..dcdb93b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Helps/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.csproj.CoreCompileInputs.cache b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..dd79cb8 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +76ee8e959c716dbc8a4dd758accf0389b658ebf0 diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.csproj.FileListAbsolute.txt b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..adcbc24 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Helps\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Helps\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Helps\obj\Debug\AvaliacaoMinutoSeguros.Infra.Helps.csproj.CoreCompileInputs.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Helps\obj\Debug\AvaliacaoMinutoSeguros.Infra.Helps.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.Helps\obj\Debug\AvaliacaoMinutoSeguros.Infra.Helps.pdb diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll new file mode 100644 index 0000000..d8d670f Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb new file mode 100644 index 0000000..dcdb93b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..d6afbb8 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/AvaliacaoMinutoSeguros.Infra.Helps/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/AvaliacaoMinutoSeguros.Infra.IoC.csproj b/AvaliacaoMinutoSeguros.Infra.IoC/AvaliacaoMinutoSeguros.Infra.IoC.csproj new file mode 100644 index 0000000..b95de48 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/AvaliacaoMinutoSeguros.Infra.IoC.csproj @@ -0,0 +1,71 @@ + + + + + Debug + AnyCPU + {545B4ADB-958F-48DE-8AFE-72B7E53A2371} + Library + Properties + AvaliacaoMinutoSeguros.Infra.IoC + AvaliacaoMinutoSeguros.Infra.IoC + v4.7.2 + 512 + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\AutoMapper.9.0.0\lib\net461\AutoMapper.dll + + + ..\packages\SimpleInjector.4.9.1\lib\net45\SimpleInjector.dll + + + + + + + + + + + + + + + + + + + + {DB6A7603-577A-40ED-9349-4D1DDEEF2731} + AvaliacaoMinutoSeguros.Business + + + {9A75E813-824F-4E5E-BE63-7A8007961367} + AvaliacaoMinutoSeguros.Domain + + + {0E3CE559-08B4-431B-9E90-EF2EBAC396FC} + AvaliacaoMinutoSeguros.Infra.Data + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/Properties/AssemblyInfo.cs b/AvaliacaoMinutoSeguros.Infra.IoC/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..8d12583 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AvaliacaoMinutoSeguros.Infra.IoC")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AvaliacaoMinutoSeguros.Infra.IoC")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("545b4adb-958f-48de-8afe-72b7e53a2371")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/SimpleInjectorContainer.cs b/AvaliacaoMinutoSeguros.Infra.IoC/SimpleInjectorContainer.cs new file mode 100644 index 0000000..44519ea --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/SimpleInjectorContainer.cs @@ -0,0 +1,29 @@ +using AvaliacaoMinutoSeguros.Business.AutoMapper; +using AvaliacaoMinutoSeguros.Business.Servicos; +using AvaliacaoMinutoSeguros.Domain.Interfaces.Repositorio; +using AvaliacaoMinutoSeguros.Domain.Interfaces.Servicos; +using AvaliacaoMinutoSeguros.Infra.Data; +using SimpleInjector; +using SimpleInjector.Lifestyles; + +namespace AvaliacaoMinutoSeguros.Infra.IoC +{ + public class SimpleInjectorContainer + { + public Container container; + /// + /// Construtor + /// Registra as classes que implementam as interfaces + /// + public SimpleInjectorContainer() + { + container = new Container(); + container.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle(); + + container.Register(); + container.Register(); + + container.Verify(); + } + } +} diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.dll b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.dll new file mode 100644 index 0000000..79121bd Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.pdb b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.pdb new file mode 100644 index 0000000..a752d87 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.xml b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.xml new file mode 100644 index 0000000..21057bd --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AutoMapper.xml @@ -0,0 +1,1754 @@ + + + + AutoMapper + + + + + Add Action called against the IConfigurationProvider before it gets sealed + + + + + Add an action to be called when validating the configuration. + + the validation callback + + + + Allow the same map to exist in different profiles. + The default is to throw an exception, true means the maps are merged. + + + + + How many levels deep should AutoMapper try to inline the execution plan for child classes. + See the docs for details. + + + + + Auto map to this destination type from the specified source type. + Discovered during scanning assembly scanning for configuration when calling + + + + + If set to true, construct the destination object using the service locator. + + + + + For self-referential types, limit recurse depth. + + + + + If set to true, preserve object identity. Useful for circular references. + + + + + If set to true, disable constructor validation. + + + + + If set to true, include this configuration in all derived types' maps. + + + + + Skip normal member mapping and convert using a instantiated during mapping. + + + + + Ignore this member for configuration validation and skip during mapping. + + + Must be used in combination with + + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + Must be used in combination with + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + + Must be used in combination with + + + + + Substitute a custom value when the source member resolves as null + + + Must be used in combination with + + + + + Value to use if source value is null + + + + + Specify the source member to map from. Can only reference a member on the type + + + Must be used in combination with + + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + Must be used in combination with + + + + + Specify a value converter type to convert from the matching source member to the destination member + Use with to specify a separate source member to supply to the value converter + + + Must be used in combination with + + + + + type + + + + + Map destination member using a custom value resolver. + Use with to specify an type. + + + Must be used in combination with + + + + + or type + + + + + Contains profile-specific configuration + + + + + Source extension methods included for search + + + + + Specify which properties should be mapped. + By default only public properties are mapped. + + + + + Specify which fields should be mapped. + By default only public fields are mapped. + + + + + Specify which methods, of those that are eligible (public, parameterless, and non-static or extension methods), should be mapped. + By default all eligible methods are mapped. + + + + + Specify which constructors should be considered for the destination objects. + By default all constructors are considered. + + + + + Contains member configuration relating to source members + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Member maps with default values. Used in dynamic/dictionary scenarios when source/destination members do not exist. + + + + + Gets the feature of type . + + The type of the feature. + The feature or null if feature not exists. + + + + Add or update the feature. Existing feature of the same type will be replaced. + + The feature. + + + + Get all configured type maps created + + All configured type maps + + + + Find the for the configured source and destination type + + Configured source type + Configured destination type + Type map configuration + + + + Find the for the configured type pair + + Type pair + Type map configuration + + + + Find the for the configured source and destination type + + Source type + Destination type + Type map configuration + + + + Resolve the for the configured source and destination type, checking parent types + + Configured source type + Configured destination type + Type map configuration + + + + Resolve the for the configured type pair, checking parent types + + Type pair + Type map configuration + + + + Dry run all configured type maps and throw for each problem + + + + + Dry run single type map + + Type map to check + + + + Dry run all type maps in given profile + + Profile name of type maps to test + + + + Dry run all type maps in given profile + + Profile type + + + + Get all configured mappers + + List of mappers + + + + Gets the features collection. + + The feature colection. + + + + Find a matching object mapper. + + the types to match + the matching mapper or null + + + + Factory method to create formatters, resolvers and type converters + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Create a mapper instance based on this configuration. Mapper instances are lightweight and can be created as needed. + + The mapper instance + + + + Create a mapper instance with the specified service constructor to be used for resolvers and type converters. + + Service factory to create services + The mapper instance + + + + Compile all underlying mapping expressions to cached delegates. + Use if you want AutoMapper to compile all mappings up front instead of deferring expression compilation for each first map. + + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + the runtime type of the source object + the runtime type of the destination object + the execution plan + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + The source/destination map request + the execution plan + + + + Map constructor parameter from member expression + + Member type + Member expression + + + + Map constructor parameter from custom func that has access to + + Not used for LINQ projection (ProjectTo) + Custom func + + + + Ignore this member for validation and skip during mapping + + + + + Execute a mapping from the source object to a new destination object. + The source type is inferred from the source object. + + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to a new destination object. + + Source type to use, regardless of the runtime type + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Source type to use + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to the existing destination object. + + Source type to use + Destination type + Source object to map from + Destination object to map into + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to the existing destination object with supplied mapping options. + + Source type to use + Destination type + Source object to map from + Destination object to map into + Mapping options + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to a new destination object with explicit objects + + Source object to map from + Source type to use + Destination type to create + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with explicit objects and supplied mapping options. + + Source object to map from + Source type to use + Destination type to create + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to existing destination object with explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapped destination object, same instance as the object + + + + Execute a mapping from the source object to existing destination object with supplied mapping options and explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapping options + Mapped destination object, same instance as the object + + + + Configuration provider for performing maps + + + + + Factory method for creating runtime instances of converters, resolvers etc. + + + + + Project the input queryable. + + Projections are only calculated once and cached + Destination type + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Project the input queryable. + + Destination type to map to + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Add an existing profile + + Profile to add + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add profiles contained in an IEnumerable + + IEnumerable of Profile + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Supply a factory method callback for creating resolvers and type converters + + Factory method + + + + Create a named profile with the supplied configuration + + Profile name, must be unique + Profile configuration + + + + Get the features collection. + + + + + Object mappers + + + + + Advance Configuration + + + + + Custom mapping action + + Source type + Destination type + + + + Implementors can modify both the source and destination objects + + Source object + Destination object + Resolution context + + + + Mapping configuration options for non-generic maps + + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the names of child object properties to map to the destination + + + + + Create a type mapping from the destination to the source type, using the destination members as validation. + + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize individual members + + Name of the member + Callback for configuring member + Itself + + + + Mapping configuration options + + Source type + Destination type + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the child objects to map to the destination + + + + + Customize configuration for a path inside the destination object. + + Expression to the destination sub object + Callback for member options + Itself + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize configuration for individual member + + Expression to the top-level destination member. This must be a member on the TDestination type + Callback for member options + Itself + + + + Customize configuration for individual member. Used when the name isn't known at compile-time + + Destination member name + Callback for member options + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + Destination type to use + + + + Customize configuration for an individual source member + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Transformation expression + Itself + + + + Create a type mapping from the destination to the source type, using the members as validation + + Itself + + + + Common mapping configuration options between generic and non-generic mapping configuration + + Source type + Destination type + Concrete return type for fluent interface + + + + Construct the destination object using the service locator + + Itself + + + + For self-referential types, limit recurse depth. + Enables PreserveReferences. + + Number of levels to limit to + Itself + + + + Preserve object identity. Useful for circular references. + + Itself + + + + Disable constructor validation. During mapping this map is used against an existing destination object and never constructed itself. + + Itself + + + + Value transformers, typically configured through explicit or extenstion methods. + + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action before member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action after member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Specify which member list to validate + + Member list to validate + Itself + + + + Include this configuration in all derived types' maps. Works by scanning all type maps for matches during configuration. + + Itself + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + + + + + Customize configuration for an individual source member. Member name not known until runtime + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Ignores all properties that have either a private or protected setter, forcing the mapper to respect encapsulation (note: order matters, so place this before explicit configuration of any properties with an inaccessible setter) + + Itself + + + + When using ReverseMap, ignores all properties that have either a private or protected setter, keeping the reverse mapping consistent with the forward mapping (note: properties with an inaccessible setter may still be mapped unless IgnoreAllPropertiesWithAnInaccessibleSetter is also used) + + Itself + + + + Supply a custom instantiation expression for the destination type + + Expression to create the destination type given the source object + Itself + + + + Supply a custom instantiation function for the destination type, based on the entire resolution context + + Not used for LINQ projection (ProjectTo) + Callback to create the destination type given the current resolution context + Itself + + + + Customize configuration for individual constructor parameter + + Constructor parameter name + Options + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + + + + + Skip normal member mapping and convert using a instantiated during mapping + Use this method if you need to specify the converter type at runtime + + Type converter type + + + + Skip member mapping and use a custom expression to convert to the destination type + + Callback to convert from source type to destination type + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, including destination object + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, with source, destination and context + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter instance + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter type + + + + Options for a single map operation + + + + + Construct services using this callback. Use this for child/nested containers + + + + + + Add context items to be accessed at map time inside an or + + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Member configuration options + + Source type for this member + Type for this member + Destination type for this map + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + + + Substitute a custom value when the source member resolves as null + + Value to use + + + + Map destination member using a custom value resolver + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom member value resolver supplied with a source member + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + + + + Map destination member using a custom member value resolver supplied from a source member name + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + Source member name + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Map destination member using a custom function. Access both the source and destination object. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, and destination member. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, destination member, and context. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom expression. Used in LINQ projection (ProjectTo). + + Member type of the source member to use + Map expression + + + + Specify the source member to map from. Can only reference a member on the type + + Property name referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Allow this member to be null. This prevents generating a check condition for it. + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + Mapping order value + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + + + Conditionally map this member against the source, destination, source and destination members + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object and the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object, the destination object, and the current resolution context + + + + Ignore this member for LINQ projections unless explicitly expanded during projection + + + + + The destination member being configured. + + + + + Apply a transformation function after any resolved destination member value with the given type + + Transformation expression + + + + Specify a value converter to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + + + + Specify a value converter to convert from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member to supply to the value converter + + + + Specify a value converter to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + + + + Specify a value converter instance from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member name to supply to the value converter + + + + Configuration options for an individual member + + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + Member to supply to value resolver + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Specify a value converter type to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + + + + Specify a value converter type to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Destination member type + Value converter instance + Source member name to supply to the value converter + + + + Defines a naming convention strategy + + + + + Regular expression on how to tokenize a member + + + + + Mapping execution strategy, as a chain of responsibility + + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Builds a mapping expression equivalent to the base Map method + + + + + Source parameter + Destination parameter + ResolutionContext parameter + Map expression + + + + Base class for simple object mappers that don't want to use expressions. + + type of the source + type of the destination + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Performs conversion from source to destination type + + Source object + Destination object + The compile time type of the source object + The compile time type of the destination object + Resolution context + Destination object + + + + Member configuration options + + Source type for this member + Destination type for this map + Type for this member + + + + Specify the source member to map from. Can only reference a member on the type + Any null reference exceptions in this expression will be ignored (similar to flattening behavior) + + Member type of the source member to use + Expression referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Configuration for profile-specific maps + + + + + Disable constructor mapping. Use this if you don't intend to have AutoMapper try to map to constructors + + + + + Creates a mapping configuration from the type to the type + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the type to the type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Create a mapping configuration from the source type to the destination type. + Use this method when the source and destination type are known at runtime and not compile time. + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the source type to the destination type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Clear the list of recognized prefixes. + + + + + Recognize a list of prefixes to be removed from source member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from source member names when matching + + List of postfixes + + + + Provide an alias for a member name when matching source member names + + Original member name + Alias to match against + + + + Provide a new value for a part of a members name + + Original member value + New member value + + + + Recognize a list of prefixes to be removed from destination member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from destination member names when matching + + List of postfixes + + + + Add a property name to globally ignore. Matches against the beginning of the property names. + + Property name to match against + + + + Allow null destination values. If false, destination objects will be created for deep object graphs. Default true. + + + + + Allow null destination collections. If true, null source collections result in null destination collections. Default false. + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Naming convention for source members + + + + + Naming convention for destination members + + + + + Specify common configuration for all type maps. + + configuration callback + + + + Customize configuration for all members across all maps + + Condition + Callback for member options. Use the property map for conditional maps. + + + + Include extension methods against source members for matching destination members to. Default source extension methods from + + Static type that contains extension methods + + + + Value transformers. Modify the list directly or use + + + + + Source member configuration options + + + + + Ignore this member when validating source members, MemberList.Source. + Does not affect validation for the default case, MemberList.Destination. + + + + + Converts source type to destination type instead of normal member mapping + + Source type + Destination type + + + + Performs conversion from source to destination type + + Source object + Destination object + Resolution context + Destination object + + + + Converts a source member value to a destination member value + + Source member type + Destination member type + + + + Perform conversion from source member value to destination member value + + Source member object + Resolution context + Destination member value + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Source member + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Member list to check for configuration validation + + + + + Check that all destination members are mapped + + + + + Check that all source members are mapped + + + + + Check neither source nor destination members, skipping validation + + + + + Provides a named configuration for maps. Naming conventions become scoped per profile. + + + + + Queryable extensions for AutoMapper + + + + + Maps a queryable expression of a source type to a queryable expression of a destination type + + Source type + Destination type + Source queryable + Destination queryable + + Mapped destination queryable + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Expression to project into + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Explicit members to expand + Expression to project into + + + + Projects the source type to the destination type given the mapping configuration + + Destination type to map to + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Expression visitor for making member access null-safe. + + + NullSafeQueryRewriter is copied from the NeinLinq project, licensed under the MIT license. + Copyright (c) 2014-2018 Axel Heer. + See https://github.com/axelheer/nein-linq/blob/master/src/NeinLinq/NullsafeQueryRewriter.cs + + + + + + + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Context information regarding resolution of a destination value + + + + + Mapping operation options + + + + + Context items from + + + + + Current mapper + + + + + Instance cache for resolving circular references + + + + + Instance cache for resolving keeping track of depth + + + + + Contains cached reflection information for easy retrieval + + + + + Main configuration object holding all mapping configuration for a source and destination type + + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Value transformer list + Transformation expression + + + diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Business.dll b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Business.dll new file mode 100644 index 0000000..42e4821 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Business.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb new file mode 100644 index 0000000..75feb9a Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Business.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll new file mode 100644 index 0000000..6b03ebf Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Domain.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb new file mode 100644 index 0000000..b333844 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Domain.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll new file mode 100644 index 0000000..3e685d4 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb new file mode 100644 index 0000000..aa7762b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Data.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll new file mode 100644 index 0000000..d8d670f Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb new file mode 100644 index 0000000..dcdb93b Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.Helps.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll new file mode 100644 index 0000000..2d41c6a Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb new file mode 100644 index 0000000..a82075a Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/SimpleInjector.dll b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/SimpleInjector.dll new file mode 100644 index 0000000..15cb0cd Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/SimpleInjector.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/SimpleInjector.xml b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/SimpleInjector.xml new file mode 100644 index 0000000..4383e73 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/bin/Debug/SimpleInjector.xml @@ -0,0 +1,6206 @@ + + + + SimpleInjector + + + + + The standard exception thrown when a container has an error in resolving an object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + + Extension methods for enable advanced scenarios. + + + + + Determines whether the specified container is locked making any new registrations. The container + is automatically locked when GetInstance is called for the + first time. + + The container. + + true if the specified container is locked; otherwise, false. + + Thrown when is null. + + + Determines whether the specified container is currently verifying its configuration. + The container. + true if the specified container is verifying; otherwise, false. + Thrown when is null. + + + + Retrieves an item from the container stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The container. + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Stores an item by the given in the container. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The container. + The key of the item to insert or override. + The actual item. May be null. + Thrown when either or + is a null reference (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The container. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either , + or is a null reference (Nothing in VB). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Common base class for Simple Injector API classes. + + + + + + + + + + + + + Gets the of the current instance. + The instance that represents the exact runtime + type of the current instance. + + + Deprecation extensions. + + + + This interface method has been removed. Please call GetInstanceProducerFor instead. + + The behavior. + The consumer. + Throws an exception. + + + + This interface method has been removed. Please call SelectProperty(PropertyInfo) instead. + + The behavior. + Type of the abstraction that is requested. + The property to check. + True when the property should be injected. + + + + Defines the container's behavior for finding a suitable constructor for the creation of a type. + Set the ConstructorResolutionBehavior + property of the container's property to change the default behavior + of the container. + + + + + Gets the given 's constructor that can be used by the + container to create that instance. + + Type of the implementation to find a suitable constructor for. + + The . This method never returns null. + + Thrown when no suitable constructor could be found. + + + + Defines the container's behavior for building an expression tree for an dependency to inject, based on + the information of the consuming type the dependency is injected into. + Set the ConstructorInjectionBehavior + property of the container's property to change the default behavior + of the container. + + + + Verifies the specified . + Contextual information about the consumer where the built dependency is + injected into. + + Thrown when the type of the target supplied with + the supplied cannot be used for auto wiring. + Thrown when the supplied argument is a null reference. + + + + Gets the for the + Target of the supplied . + + Contextual information about the consumer where the built dependency is + injected into. + The indication whether the method should return null or throw + an exception when the type is not registered. + An that describes the intend of creating that + Target. This method never returns null. + Thrown when the argument is a null reference. + + + + Defines the container's behavior for selecting the lifestyle for a registration in case no lifestyle + is explicitly supplied. + Set the LifestyleSelectionBehavior + property of the container's property to change the default behavior + of the container. By default, when no lifestyle is explicitly supplied, the + Transient lifestyle is used. + + + + Selects the lifestyle based on the supplied type information. + Type of the implementation to that is registered. + The suited for the given type. + Thrown when either one of the arguments is a null reference. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterResolveInterceptor + method that takes this delegate. This type contains contextual information about a resolved type and it + allows the user to examine the given instance to decide whether the + should be applied or not. + + + + + Gets the that is responsible for the initialization of the created + instance. + + The or null (Nothing in VB) when the instance producer is + unknown. + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterInitializer + overload that takes this delegate. This type contains contextual information about the creation and it + allows the user to examine the given instance to decide whether the instance should be initialized or + not. + + + + + Gets a null reference. This property has been deprecated. + + The null (Nothing in VB). + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + Contains data that can be used to initialize a created instance. This data includes the actual + created and the information about the created instance. + + + + Initializes a new instance of the struct. + The that contains contextual information + about the created instance. + The created instance. + + + Gets the with contextual information about the + created instance. + The . + + + Gets the created instance. + The created instance. + + + + + + + + + + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + True if a and b are equal; otherwise, false. + + + + Indicates whether the values of two specified objects are + not equal. + + The first object to compare. + The second object to compare. + True if a and b are not equal; otherwise, false. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + + + Initializes a new instance of the struct. + The scope factory. + The container. + + + Gets the lazily initialized Scope of the current LazyScope instance. + The current Scope or null. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + Implementation type. + + + + Initializes a new instance of the + struct. + The registration. + + + + Gets the lazily initialized instance for the of the current LazyScopedRegistration. + + The scope that is used to retrieve the instance. + The cached instance. + + + + Defines the container's behavior for selecting properties to inject during the creation of a type. + Set the PropertySelectionBehavior + property of the container's property to change the default behavior + of the container. By default, no properties will be injected by the container. + + + + + Determines whether a property should be injected by the container upon creation of its type. + + + The type being created for which the property should be injected. Note that this might a + different type than the type on which the property is declared (which might be a base class). + The property to check. + True when the property should be injected. + + + + A known relationship defines a relationship between two types. The Diagnostics Debug View uses this + information to spot possible misconfigurations. + + + + Initializes a new instance of the class. + The implementation type of the parent type. + The lifestyle of the parent type. + The type that the parent depends on (it is injected into the parent). + + + Gets the implementation type of the parent type of the relationship. + The implementation type of the parent type of the relationship. + + + Gets the lifestyle of the parent type of the relationship. + The lifestyle of the parent type of the relationship. + + + Gets the type that the parent depends on (it is injected into the parent). + The type that the parent depends on. + + + + + + + + + + + + + The container. Create an instance of this type for registration of dependencies. + + + + Thread-safety: + Resolving instances can be done safely from multiple threads concurrently, but registration needs to + be done from one single thread. + + + It is therefore safe to call , , + GetService, and + and anything related to resolving instances from multiple thread + concurrently. It is however unsafe to call + RegisterXXX, + , , , + or anything related to registering from multiple threads concurrently. + + + Common Container methods specific for the full .NET version of Simple Injector. + Methods for batch registration. + Methods for registration of collections. + Methods for conditional registrations. + + These conditional registration methods lack a Func{PredicateContext, TService} predicate + method. This is deliberate, because would force the factory to be registered as transient, forcing + the whole parent structure to become transient as well. Besides this, it would blind the diagnostic + system, because it will stop at the delegate, instead of being able to analyze the object graph as + a whole. + + Methods for registration. + Methods for registration of decorators. + Methods for resolving instances. + Methods for verifying the container. + + + Initializes a new instance of the class. + + + Gets the container options. + The instance for this container. + + + Gets the container scope that that manages the lifetime of singletons and other + container-controlled instances. Use this property to register actions that need to be called + and instances that need to be disposed when the container gets disposed. + The instance for this container. + + + + Gets a value indicating whether the container is currently being verified on the current thread. + + True in case the container is currently being verified on the current thread; otherwise + false. + + + + Gets the intermediate lifestyle that forwards CreateRegistration calls to the lifestyle that is + returned from the registered container.Options.LifestyleSelectionBehavior. + + + + + Returns an array with the current registrations. This list contains all explicitly registered + types, and all implicitly registered instances. Implicit registrations are all concrete + unregistered types that have been requested, all types that have been resolved using + unregistered type resolution (using the event), and + requested unregistered collections. Note that the result of this method may change over time, + because of these implicit registrations. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + + + + Returns an array with the current registrations for root objects. Root objects are registrations + that are in the root of the object graph, meaning that no other registration is depending on it. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + This list contains the root objects of all explicitly registered types, and all implicitly + registered instances. Implicit registrations are all concrete unregistered types that have been + requested, all types that have been resolved using unregistered type resolution (using the + event), and requested unregistered collections. Note that + the result of this method may change over time, because of these implicit registrations. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + Thrown when this method is called before + has been successfully called. + + + Releases all instances that are cached by the object. + + + Prevents any new registrations to be made to the container. + + + Releases all instances that are cached by the object. + True for a normal dispose operation; false to finalize the handle. + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + An assembly that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the transient lifestyle. + + The definition of the open generic type. + A list types to be registered. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the given . + + The definition of the open generic type. + A list types to be registered. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + assemblies = new[] { typeof(ILogger).Assembly }; + var types = container.GetTypesToRegister(assemblies) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ( + typeof(ILogger).Assembly, + typeof(FileLogger).Assembly) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Container.Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete types that are located in the supplied + and implement or inherit from the supplied and match the specified + . can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var options = new TypesToRegisterOptions { IncludeGenericTypeDefinitions: true }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies, options) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + The options. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Registers a dynamic (container-uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + + The container-uncontrolled collection to register. + + + Thrown when this container instance is locked and can not be altered, or when a + for has already + been registered. + + + Thrown when is a null reference. + + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when and + are not a generic type or when + is a partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of the type returned from + will be returned every time a + is requested and where the supplied + returns true. The instance is cached according to the supplied + . Both the and + will only be evaluated a finite number of times; + they unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + A factory that allows building Type objects that define the + implementation type to inject, based on the given contextual information. The delegate is allowed + to return (partially) open-generic types. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the registration can be applied for + the requested service type. This predicate can be used to build a fallback mechanism where + multiple registrations for the same service type are made. + Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is a + partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + is requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is open generic or + is not assignable to . + + Thrown when this container instance is locked and can not be altered. + + + + + Occurs when an instance of a type is requested that has not been registered explicitly, allowing + resolution of unregistered types before the container tries to create the type. + + + + The event is called by the container every time an + unregistered type is requested for the first time, allowing a developer to do unregistered type + resolution. By calling the + Register method on the + , a , or + delegate can be registered allowing the container to retrieve + instances of the requested type. This registration is cached and it prevents the + ResolveUnregisteredType event from being called again for the same type. + + + When no registered event handled the registration of an unregistered type, the container will try + to create the type when this type is either concrete or is the + interface. Concrete types will be registered with the Transient + lifestyle and registrations will return an empty collection. When no + even handled the registration and the container could not create it, an exception is thrown. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once. While the calls to for a given type + are finite (and will in most cases happen just once), a container can call the delegate multiple + times and make parallel calls to the delegate. You must make sure that the code can be called + multiple times and is thread-safe. + + + + The following example shows the usage of the event: + + { + void Validate(T instance); + } + + // Implementation of the null object pattern. + public class EmptyValidator : IValidator + { + public void Validate(T instance) + { + // Does nothing. + } + } + + [TestMethod] + public void TestResolveUnregisteredType() + { + // Arrange + var container = new Container(); + + // Register an EmptyValidator to be returned when a IValidator is requested: + container.ResolveUnregisteredType += (sender, e) => + { + if (e.UnregisteredServiceType.IsGenericType && + e.UnregisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var validatorType = typeof(EmptyValidator<>).MakeGenericType( + e.UnregisteredServiceType.GetGenericArguments()); + + // Register the instance as singleton. + e.Register(Lifestyle.Singleton.CreateRegistration(validatorType, container)); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(EmptyValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(EmptyValidator)); + } + ]]> + + The example above registers a delegate that is raised every time an unregistered type is requested + from the container. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will request the container for a concrete EmptyValidator<T> implementation that + implements the given + UnregisteredServiceType, and + registers a delegate that will return this created instance. The e.Register call + registers the method in the container, preventing the from + being called again for the exact same service type, preventing any performance penalties. + + + Please note that given example is just an uhhmm... example. In the case of the example the + EmptyValidator<T> can be better registered using of the built-in + Register methods instead. These methods take + care of any given generic type constraint and allow the implementation to be integrated into the + container's pipeline, which allows it to be intercepted using the + event and allow any registered initializers to be + applied. + + + + + + Occurs after the creation of the of a registered type is complete (the + lifestyle has been applied), allowing the created to be wrapped, + changed, or replaced. Multiple delegates may handle the same service type. + + + + The ExpressionBuilt event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilt event, can change the + property on the + , which allows changing the way the type is constructed. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to for a + given type are finite (and will in most cases happen just once), a container can call the delegate + multiple times and make parallel calls to the delegate. You must make sure that the code can be + called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilt event: + + { + void Validate(T instance); + } + + public interface ILogger + { + void Write(string message); + } + + // Implementation of the decorator pattern. + public class MonitoringValidator : IValidator + { + private readonly IValidator validator; + private readonly ILogger logger; + + public MonitoringValidator(IValidator validator, ILogger logger) + { + this.validator = validator; + this.logger = logger; + } + + public void Validate(T instance) + { + this.logger.Write("Validating " + typeof(T).Name); + this.validator.Validate(instance); + this.logger.Write("Validated " + typeof(T).Name); + } + } + + [TestMethod] + public void TestExpressionBuilt() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + container.Register, OrderValidator>(); + container.Register, CustomerValidator>(); + + // Intercept the creation of IValidator instances and wrap them in a MonitoringValidator: + container.ExpressionBuilt += (sender, e) => + { + if (e.RegisteredServiceType.IsGenericType && + e.RegisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var decoratorType = typeof(MonitoringValidator<>) + .MakeGenericType(e.RegisteredServiceType.GetGenericArguments()); + + // Wrap the IValidator in a MonitoringValidator. + e.Expression = Expression.New(decoratorType.GetConstructors()[0], new Expression[] + { + e.Expression, + container.GetRegistration(typeof(ILogger)).BuildExpression(), + }); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(MonitoringValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(MonitoringValidator)); + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will changes the current with a new one that creates + a new MonitoringValidator<T> that takes the current validator (and an ILogger) + as an dependency. + + + Please note that given example is just an uhhmm... example. In the case of the example the + MonitoringValidator<T> is a decorator and instead of manually writing this code that + many limitations, you can use one of the built-in + RegisterDecorator methods instead. + These extension methods take care of any given generic type constraint, allow to register decorators + conditionally and allow the decorator to be integrated into the container's pipeline, which allows + it to be intercepted using the event and allow any registered + initializers to be applied. + + + + + + Occurs directly after the creation of the of a registered type is made, + but before any initializer and lifestyle specific caching + has been applied, allowing the created to be altered. Multiple delegates + may handle the same service type. + + + + The ExpressionBuilding event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilding event, can change the + property on the + , which allows changing the way the type is constructed. + + + The exact type supplied depends on the type of registration. + Registrations that explicitly supply the implementation type (such as + Register<TService, TImplementation>()) + will result in an , while registrations that take a delegate (such as + Register<TService>(Func<TService>)) + will result in an . Singletons that are passed in using their + value (RegisterInstance<TService>(TService)) + will result in an . Note that other ExpressionBuilding + registrations might have changed the + property and might have supplied an of a different type. The order in + which these events are registered might be of importance to you. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to registered ExpressionBuilding + events for a given type are finite (and will in most cases happen just once), a container can + call the delegate multiple times and make parallel calls to the delegate. You must make sure that + the code can be called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilding event: + + { + var expression = e.Expression as NewExpression; + + if (expression != null) + { + var propertiesToInject = + from property in expression.Constructor.DeclaringType.GetProperties() + where property.GetCustomAttributes(typeof(MyInjectPropertyAttribute), true).Any() + let registration = container.GetRegistration(property.PropertyType, true) + select Tuple.Create(property, registration); + + if (propertiesToInject.Any()) + { + Func[], object> injectorDelegate = + (instance, dependencies) => + { + foreach (var dependency in dependencies) + { + dependency.Item1.SetValue(instance, dependency.Item2.GetInstance(), null); + } + + return instance; + }; + + e.Expression = Expression.Convert( + Expression.Invoke( + Expression.Constant(injectorDelegate), + e.Expression, + Expression.Constant(propertiesToInject.ToArray())), + expression.Constructor.DeclaringType); + } + } + }; + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks if the type contains properties that are + decorated with the supplied MyInjectPropertyAttribute. If decorated properties are found, + the given expression is replaced with an expression that injects decorated properties. + + + + + Gets the object that allows access to methods related to registration and creation of collections. + The instance for this container. + + + This property is obsolete. Please use instead. + The instance for this container. + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that an instance of will be returned when it + is requested. The instance is cached according to the supplied . + + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a new instance of will be returned every time a + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers that an instance of will be returned when an + instance of type is requested. The instance is cached according to + the supplied . + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning transient instances of + . The delegate is expected to always return a new instance on + each call. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. This can be an open-generic type. + Thrown when is a null + references (Nothing in VB). + Thrown when represents + a type that can not be created by the container. + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that a new instance of will be returned every time a + is requested. If and + represent the same type, the type is registered by itself. + Open and closed generic types are supported. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when or + are null references (Nothing in VB). + Thrown when is + no sub type from (or the same type). + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that an instance of type will be returned when an + instance of type is requested. The instance is cached according to + the supplied . Open and closed generic types are supported. + + The interface or base type that can be used to retrieve the instances. + This can be an open-generic type. + The concrete type that will be registered. + This can be an open-generic type. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container, when either + or are open generic types, or when + is not assignable from the . + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Registers the specified delegate that allows returning instances of . + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. + The delegate that will be used for creating new instances. + Thrown when either or + are null references (Nothing in VB). + Thrown when represents an + open generic type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use the overload that accepts a delegate. + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton(Type, Func<object>). + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single concrete instance that will be constructed using constructor injection and will + be returned when this instance is requested by type . + This must be thread-safe when working in a multi-threaded + environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when + has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that the same a single instance of type will be + returned every time an type is requested. If + and represent the same + type, the type is registered by itself. must be thread-safe + when working in a multi-threaded environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + + The interface or base type that can be used to retrieve the instances. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows constructing a single instance of + . This delegate will be called at most once during the lifetime of + the application. The returned instance must be thread-safe when working in a multi-threaded + environment. + If the instance returned from implements , + the created instance will get disposed when Container.Dispose + gets called. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating this single + instance. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a + null reference. + + + + Registers that the same instance of type will be returned every + time an instance of type type is requested. If + and represent the same type, the + type is registered by itself. must be thread-safe when working + in a multi-threaded environment. Open and closed generic types are supported. + + The base type or interface to register. + This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from , or when one of them represents an open generic + type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that allows constructing a single + instance. The container will call this delegate at most once during the lifetime of the application. + + The base type or interface to register. + The delegate that will be used for creating that single instance. + Thrown when represents an open + generic type. + Thrown when either or + are null references (Nothing in + VB). + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers an delegate that runs after the creation of instances that + implement or derive from the given . Please note that only instances + that are created by the container (using constructor injection) can be initialized this way. + + The type for which the initializer will be registered. + The delegate that will be called after the instance has been + constructed and before it is returned. + + Thrown when the is a null reference. + + + Thrown when this container instance is locked and can not be altered. + + + Multiple delegates can be registered per + and multiple initializers can be applied on a created instance, + before it is returned. For instance, when registering a + for type , the delegate will be called for every instance created by + the container, which can be nice for debugging purposes. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + The following example shows the usage of the + RegisterInitializer method: + + (); + + // Configuring property injection for types that implement ICommand: + container.RegisterInitializer(command => + { + command.SendAsync = true; + }); + + // Configuring property injection for types that implement CommandBase: + container.RegisterInitializer(command => + { + command.Clock = container.GetInstance(); + }); + + // Act + var command = (ConcreteCommand)container.GetInstance(); + + // Assert + // Because ConcreteCommand implements both ICommand and CommandBase, + // both the initializers will have been executed. + Assert.IsTrue(command.SendAsync); + Assert.IsNotNull(command.Clock); + } + ]]> + + The container does not use the type information of the requested service type, but it uses the + type information of the actual implementation to find all initialized that apply for that + type. This makes it possible to have multiple initializers to be applied on a single returned + instance while keeping performance high. + + + Registered initializers will only be applied to instances that are created by the container self + (using constructor injection). Types that are newed up manually by supplying a + delegate to the container (using the + method) or registered as single instance + (using ) will not trigger initialization. + When initialization of these instances is needed, this must be done manually, as can be seen in + the following example: + commandInitializer = command => + { + initializerCallCount++; + }); + + // Configuring that initializer. + container.RegisterInitializer(commandInitializer); + + container.Register(() => + { + // Create a ConcreteCommand manually: will not be initialized. + var command = new ConcreteCommand("Data Source=.;Initial Catalog=db;"); + + // Run the initializer manually. + commandInitializer(command); + + return command; + }); + + // Act + var command = container.GetInstance(); + + // Assert + // The initializer will only be called once. + Assert.AreEqual(1, initializerCallCount); + } + ]]> + The previous example shows how a manually created instance can still be initialized. Try to + prevent creating types manually, by changing the design of those classes. If possible, create a + single public constructor that only contains dependencies that can be resolved. + + + + + + Registers an delegate that runs after the + creation of instances for which the supplied returns true. Please + note that only instances that are created by the container can be initialized this way. + + The delegate that will be called after the instance has been + constructed and before it is returned. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + Note: The is not guaranteed to be called once per registration; + when a registration's instance is requested for the first time simultaneously over multiple thread, + the predicate might be called multiple times. The caller of this method is responsible of supplying + a predicate that is thread-safe. + + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is ambiguous, + when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Act + IFoo foo = container.GetInstance(); + IBar bar = container.GetInstance(); + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + + In the example above a singleton registration is created for type FooBar and this + registration is added to the container for each interface (IFoo and IBar) that it + implements. Since both services use the same singleton registration, requesting those services + will result in the return of the same (singleton) instance. + + + events are applied to the of the + instance and are therefore applied once. + events on the other hand get applied to the Expression of the . + Since each AddRegistration gets its own instance producer (that wraps the + Registration instance), this means that the ExpressionBuilt events will be + applied for each registered service type. + + + The most practical example of this is the use of decorators using one of the + RegisterDecorator overloads (decorator registration + use the ExpressionBuilt event under the covers). Take a look at the following example: + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Registere a decorator for IBar, but not for IFoo + container.RegisterDecorator(typeof(IBar), typeof(BarDecorator)); + + // Act + var foo = container.GetInstance(); + var decorator = container.GetInstance() as BarDecorator; + var bar = decorator.DecoratedBar; + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + The example shows that the decorator gets applied to IBar but not to IFoo, but that + the decorated IBar is still the same instance as the resolved IFoo instance. + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is not a reference + type, is open generic, is ambiguous, when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . By default, a new + instance will be returned on each request (according the + Transient lifestyle), independently of the lifestyle of the + wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + + Thrown when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type or + where T is . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . Decorators can be applied to both open, closed, and + non-generic service types. By default, a new instance will be + returned on each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + The following example shows the definition of a generic ICommandHandler<T> interface, + a CustomerMovedCommandHandler implementing that interface, and a + ValidatorCommandHandlerDecorator<T> that acts as a decorator for that interface. + + { + void Handle(TCommand command); + } + + public class CustomerMovedCommand + { + [Required] + public int CustomerId { get; set; } + + [Required] + public Address Address { get; set; } + } + + public class CustomerMovedCommandHandler + : ICommandHandler + { + public void Handle(CustomerMovedCommand command) + { + // some logic + } + } + + // Decorator that validates commands before they get executed. + public class ValidatorCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly Container container; + + public ValidatorCommandHandlerDecorator( + ICommandHandler decoratedHandler, + Container container) + { + this.decoratedHandler = decoratedHandler; + this.container = container; + } + + public void Handle(TCommand command) + { + this.Validate(command); + + this.decoratedHandler.Handle(command); + } + + private void Validate(TCommand command) + { + var validationContext = + new ValidationContext(command, this.container, null); + + Validator.ValidateObject(command, validationContext); + } + } + + // Decorator that measures the time it takes to execute a command. + public class MonitoringCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly ILogger logger; + + public MonitoringCommandHandlerDecorator( + ICommandHandler decoratedHandler, + ILogger logger) + { + this.decoratedHandler = decoratedHandler; + this.logger = logger; + } + + public void Handle(TCommand command) + { + var watch = Stopwatch.StartNew(); + + this.decoratedHandler.Handle(command); + + this.logger.Log(string.Format("{0} executed in {1} ms.", + command.GetType().Name, watch.ElapsedMilliseconds)); + } + } + + [TestMethod] + public static void TestRegisterOpenGenericDecorator() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + + // Search the given assembly and register all concrete types that + // implement ICommandHandler. + container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), + typeof(ICommandHandler<>).Assembly); + + // Wrap all ICommandHandler service types with a decorator + // that measures and logs the duration of that handler. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(MonitoringCommandHandlerDecorator<>)); + + // Wrap all ICommandHandler types (in this case it will + // wrap the monitoring decorator), but only if the TCommand contains + // any properties. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(ValidatorCommandHandlerDecorator<>), context => + { + var commandType = context.ServiceType.GetGenericArguments()[0]; + bool mustDecorate = commandType.GetProperties().Any(); + return mustDecorate; + }); + + // Act + var handler = + container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(handler, + typeof(ValidatorCommandHandlerDecorator)); + } + ]]> + + The (possibly open generic) service type that will be wrapped by the + given . + The (possibly the open generic) decorator type that will + be used to wrap the original service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or implement + , when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned when the supplied + returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the decorator type that is returned from is + supplied when the supplied returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the decorator type that is returned by the + supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The types returned from the may be non-generic, + closed-generic, open-generic and even partially-closed generic. The container will try to fill in + the generic parameters based on the resolved service type. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The type returned from may have a constructor with an + argument of type where T is . In this + case, the library will not inject the decorated itself into the + decorator instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + The following is an example of the registration of a decorator through the factory delegate: + , MoveCustomerCommandHandler>(); + + container.RegisterDecorator( + typeof(ICommandHandler<>), + context => typeof(LoggingCommandHandler<,>).MakeGenericType( + typeof(LoggingCommandHandler<,>).GetGenericArguments().First(), + context.ImplementationType), + Lifestyle.Transient, + context => true); + + var handler = container.GetInstance>(); + + Assert.IsInstanceOfType(handler, + typeof(LoggingCommandHandler)); + + ]]> + The code above allows a generic LoggingCommandHandler<TCommand, TImplementation> to + be applied to command handlers, where the second generic argument will be filled in using the + contextual information. + + The definition of the (possibly open generic) service type that will + be wrapped by the decorator type that is returned from . + A factory that allows building Type objects that define the + decorators to inject, based on the given contextual information. The delegate is allowed to return + (partially) open-generic types. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the decorator must be applied to a + service type. + Thrown when one of the arguments is a null reference. + + + + Ensures that the supplied decorator is returned when the supplied + returns true, wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. By default, a new instance will be returned on + each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when does not inherit + from or implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested TService. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested serviceType. + Thrown when there are errors resolving the service instance. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType. -or- null if there is no service object of type + . + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + An or null (Nothing in VB). + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned, or an exception is throw when + is set to true. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + The indication whether the method should return null or throw + an exception when the type is not registered. + An or null (Nothing in VB). + + + + Verifies and diagnoses this Container instance. This method will call all registered + delegates, iterate registered collections and throws an exception if there was an error. + + Thrown when the registration of instances was + invalid. + + + + Verifies the Container. This method will call all registered delegates, + iterate registered collections and throws an exception if there was an error. + + Specifies how the container should verify its configuration. + Thrown when the registration of instances was + invalid. + Thrown in case there are diagnostic errors and + the option is supplied. + Thrown when has an invalid value. + + + + Contains methods for registering and creating collections in the . + + + + + Gets the for this instance. + + The for this instance. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new to a collection of registrations for the given + . Calls to Append can both preceed and follow a call to one + of the Container.Collections.Register + overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + Thrown when the is ambiguous. + + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + The lifestyle that specifies how the returned instance will be cached. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends the specified delegate to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The element type of the collections to register. + The instance to register. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + TThe element type of the collections to register. + The instance to register. + Thrown when the is ambiguous, or + does not implement . + + Thrown when either or + are null references. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + The container-uncontrolled collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Provides data for and interaction with the + ContainerLocking event of + the . + + + + + Delegate that allows intercepting calls to and + . + + Contextual information about the to be created object. + A delegate that produces the actual instance according to its + lifestyle settings. + The instance that is returned from or an intercepted instance. + + + Configuration options for the Container. + + The following example shows the typical usage of the ContainerOptions class. + (); + + // Use of ContainerOptions class here. + container.Options.AllowOverridingRegistrations = true; + + // Replaces the previous registration of ITimeProvider + container.Register(); + ]]> + + + + + Occurs just before the container is about to be locked, giving the developer a last change to + interact and change the unlocked container before it is sealed for further modifications. Locking + typically occurs by a call to Container.GetInstance, Container.Verify, or any other + method that causes the construction and resolution of registered instances. + + + + The ContainerLocking event is called exactly once by the container, allowing a developer to + register types, hook unregistered type resolution events that need to be applied last, or see + who is responsible for locking the container. + + + A registered event handler delegate is allowed to make a call that locks the container, e.g. + calling Container.GetInstance; this will not cause any new ContainerLocking event to + be raised. Doing so, however, is not advised, as that might cause any following executed handlers + to break, in case they require an unlocked container. + + + + + + Gets the container to which this ContainerOptions instance belongs to. + + The current Container. + + + + Gets or sets a value indicating whether the container allows overriding registrations. The default + is false. + + The value indicating whether the container allows overriding registrations. + + + + Gets or sets a value indicating whether the container should suppress checking for lifestyle + mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default + is false. This setting will have no effect when is true. + + The value indicating whether the container should suppress checking for lifestyle + mismatches. + + + + + Gets or sets a value indicating whether the container should use a loosened (i.e. less strict) + behavior for detecting lifestyle mismatches (see: https://simpleinjector.org/dialm). In short, + when is set to true + dependencies are allowed to be injected into + components. When disabled, a warning would be given in that case. + + + Simple Injector allows custom lifestyles to be created and this loosened behavior works on custom + lifestyles as well. The loosened behavior will ignore any lifestyle mismatch checks on any + component with a lifestyle that has a that is equal or shorter than + the length of . + + + + + + Gets or sets a value indicating whether the container should automatically trigger verification + and diagnostics of its configuration when the first service is resolved (e.g. the first call to + GetInstance). The behavior is identical to calling Verify() + manually. The default is false. + + The value indicating whether the container should automatically trigger verification. + + + Gets or sets a value indicating whether. + This method is deprecated. Changing its value will have no effect. + The value indicating whether the container will return an empty collection. + + + + Gets or sets a value indicating whether all the containers in the current AppDomain should throw + exceptions that contain fully qualified type name. The default is false which means + the type's namespace is omitted. + + The value indicating whether exception message should emit full type names. + + + + Gets or sets a value indicating whether the container should resolve unregistered concrete types. + The default value is true. Consider changing the value to false to prevent + accidental creation of types you haven't registered explicitly. + + The value indicating whether the container should resolve unregistered concrete types. + + Thrown when this container instance is locked and can not be altered. + + + + + Gets or sets the constructor resolution behavior. By default, the container only supports types + that have a single public constructor. + + The constructor resolution behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + Gets or sets the dependency injection behavior. + The constructor injection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the property selection behavior. The container's default behavior is to do no + property injection. + + The property selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the lifestyle selection behavior. The container's default behavior is to make + registrations using the lifestyle. + The lifestyle selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default lifestyle that the container will use when a registration is + made when no lifestyle is supplied. + The default lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default scoped lifestyle that the container should use when a registration is + made using Lifestyle.Scoped. + The default scoped lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. + By default, this value is true for the first few containers that are created in an AppDomain + and false for all other containers. You can set this value explicitly to false + to prevent the use of dynamic assemblies or you can set this value explicitly to true to + force more container instances to use dynamic assemblies. Note that creating an infinite number + of Container instances (for instance one per web request) + with this property set to true will result in a memory leak; dynamic assemblies take up + memory and will only be unloaded when the AppDomain is unloaded. + + A boolean indicating whether the container should use a dynamic assembly for compilation. + + + + + Registers an delegate that allows intercepting calls to + GetInstance and + . + + + If multiple registered instances must be applied, they will be + applied/wrapped in the order of registration, i.e. the first registered interceptor will call the + original instance producer delegate, the second interceptor will call the first interceptor, etc. + The last registered interceptor will become the outermost method in the chain and will be called + first. + + The delegate to register. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + The following example shows the usage of the method: + + { + object instance = producer.Invoke(); + Console.WriteLine(instance.GetType().Name + " resolved for " + context.Producer.ServiceType.Name); + return instance; + }, + context => context.Producer.ServiceType.Name.EndsWith("Controller")); + + container.Register(); + container.Register(); + + // This line will write "HomeViewModel resolved for IHomeViewModel" to the console. + container.GetInstance(); + ]]> + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The scope that manages the lifetime of singletons and other container-controlled instances. + + + + + Allows registering an delegate that will be called when the container + gets disposed, but before the container disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to + Dispose, the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Adds the to the list of items that will get disposed when the + container gets disposed. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. Instead, + provides an atomic operation for getting and setting an item. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either of the arguments is a null reference (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances + are returned in order of creation/registration. When + Container.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be + disposed in opposite order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + + An instance of this type can be injected into constructors of decorator classes that are registered + using RegisterDecorator. This type contains + contextual information about the applied decoration and it allows users to examine the given instance + to make runtime decisions. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterDecorator + overload that takes this delegate. This type contains information about the decoration that is about + to be applied and it allows users to examine the given instance to see whether the decorator should + be applied or not. + + + Please see the + RegisterDecorator + method for more information. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + Hooks into the building process and adds a decorator if needed. + + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diaal. + + + + Gets the lifestyles that causes the registrations to be conflicting. + instances. + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the registration that caused this warning. + An . + + + + Gets the list of registrations that are in conflict with the . + + A list of instances. + + + + Entry point for doing diagnostic analysis on instances. + + + The following example shows the usage of the Analyzer class: + + + + + + Analyzes the supplied instance. + + The container instance to analyze. + A collection of sub types that describe the diagnostic + warnings and messages. + + + + Diagnostic result for a warning about a concrete type that was not registered explicitly and was not + resolved using unregistered type resolution, but was created by the container using the transient + lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + Gets a collection of instances that describe all + container-registered dependencies for the given component. + List of objects. + + + + A hierarchical group of . + + + + + Gets the base that describes the service types of its + . The value often be either (in case this is a + root group) or a partial generic type to allow hierarchical grouping of a large number of related + generic types. + + The . + + + Gets the friendly name of the group. + The name. + + + Gets the description of the group. + The description. + + + Gets the diagnostic type of all grouped instances. + The . + + + Gets the parent or null (Nothing in VB) when this is the + root group. + The . + + + Gets the collection of child s. + A collection of elements. + + + Gets the collection of instances. + /// A collection of elements. + + + + Base class for types that hold information about a single diagnostic message or warning for a + particular type or part of the configuration. + + + + Gets the severity of this result. + The . + + + Gets the diagnostic type of this result. + The . + + + Gets the service type to which this warning is related. + A . + + + Gets the description of the diagnostic result. + A with the description. + + + Gets the documentation URL of the diagnostic result. + A with the URL. + + + Gets the hierarchical group to which this diagnostic result belongs. + The . + + + + Specifies the list of severity levels that diagnostic results can have. + + + + Information messages and tips about the configuration. + + + Warning messages that are likely to cause problems in your application. + + + + Specifies the list of diagnostic types that are currently supported by the diagnostic + . Note that new diagnostic types might be added in future versions. + For more information, please read the + Diagnosing your configuration using the Diagnostic + Services wiki documentation. + + + + + Diagnostic type that warns about + a concrete type that was not registered explicitly and was not resolved using unregistered type + resolution, but was created by the container using the transient lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + + Diagnostic type that warns when a + component depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + + Diagnostic type that warns when a + component depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + + Diagnostic type that warns when a component depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + + Diagnostic type that warns when multiple registrations map to the same component and + lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + + Diagnostic type that warns when a component is registered as transient, while implementing + . + For more information, see: https://simpleinjector.org/diadt. + + + + + Diagnostic type that warns when multiple registrations exist that map to the same component but + with different lifestyles, which will cause the component to be cached in different -possibly + incompatible- ways. + For more information, see: https://simpleinjector.org/diaal. + + + + + Diagnostic result for a warning about a component that is registered as transient, but implements + . + For more information, see: https://simpleinjector.org/diadt. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result for a warning about a + component that depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result that warns about a + component that depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + Gets the instance that describes the current relationship between the checked component + and the short-circuited dependency. + The . + + + + Gets the collection of registrations that have the component's current dependency as + implementation type, but have a lifestyle that is different than the current dependency. + + A collection of instances. + + + + Diagnostic result that warns about a component that depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + Gets the created type. + A . + + + Gets the list of registrations that are dependencies of the . + A collection of instances. + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + Gets the lifestyle on which instances are torn. + A . + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the list of registrations that are affected by this warning. + A list of instances. + + + + Thrown by the container in case of a diagnostic error. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message. + + The list of errors. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + Gets the list of instances. + A list of instances. + + + + Provides data for and interaction with the + ExpressionBuilding event of + the . An observer can change the + property to change the component that is + currently being built. + + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + + Gets the type that is known to be returned by the + Expression (most often the implementation + type used in the Register call). This type will be a derivative of + RegisteredServiceType (or + or RegisteredServiceType itself). If the Expression is changed, the new expression + must also return an instance of type KnownImplementationType or a sub type. + This information must be described in the new Expression. + + A . + + + Gets the lifestyle for the component that is currently being built. + The . + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Provides data for and interaction with the + ExpressionBuilt event of + the . An observer can change the + property to change the component that is currently + being built. + + + + Initializes a new instance of the class. + Type of the registered service. + The registered expression. + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + Gets or sets the current lifestyle of the registration. + The original lifestyle of the registration. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Helper methods for the container. + + + + + Contains contextual information about the direct consumer for which the given dependency is injected + into. + + + + Initializes a new instance of the class. + The constructor parameter for the created component. + + + Initializes a new instance of the class. + The implementation type of the consumer of the component that should be created. + The property for the created component. + + + Gets the service type of the consumer of the component that should be created. + The closed generic service type. + + + Gets the implementation type of the consumer of the component that should be created. + The implementation type. + + + + Gets the information about the consumer's target in which the dependency is injected. The target + can be either a property or a constructor parameter. + + The for this context. + + + + + + + + + + + + + + + + Discovers the attributes of the code element (a property or parameter) where a dependency will be + injected into, and provides access to its meta data. + + + + + Gets the constructor argument of the consumer of the component where the dependency will be + injected into. The property can return null. + + The or null when the dependency is injected into a property. + + + + + Gets the property of the consumer of the component where the dependency will be injected into. + The property can return null. + + The or null when the dependency is injected into a constructor + argument instead. + + + Gets the name of the target. + A string containing the name of the target. + + + Gets the type of the target. + A containing the type of the target. + + + Gets the member of the target. This is either the constructor of the parameter, or in + case the target is a property, the property itself will be returned. + A containing the type of the target. + + + + Returns an array of all of the custom attributes defined on either the or + the , excluding named attributes, or an empty array if there are no custom + attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + There is more than one attribute of type attributeType + defined on this member. + + + + Returns an array of custom attributes defined on either the or + the , identified by type, or an empty array if there are no custom + attributes of that type. + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + Thrown when attributeType is null. + + + + Indicates whether one or more instance of attributeType is defined on this either the + or the . + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + true if the attributeType is defined on this member; false otherwise. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The parameter to inspect. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The parameter to inspect.The parameter to inspect. + True to inspect the ancestors of element; otherwise, false. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The type of attribute to search for. + A custom attribute that matches attributeType, or null if no such attribute is found. + + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A custom attribute matching attributeType, or null if no such attribute is found. + + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter. + + The type of attribute to search for. + A collection of the custom attributes that are applied to element and that match T, or + an empty collection if no such attributes exist. + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter, and optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A collection of the custom attributes that are applied to element and that match T, or an + empty collection if no such attributes exist. + + + + + + + + + + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + GetCurrentRegistrations() or + GetRegistration(Type, bool). + + + The Register method overloads create InstanceProducer instances internally, but + InstanceProducers can be created manually to implement special scenarios. An + InstanceProducer wraps instance. The Registration builds an + that describes the intend to create the instance according to a certain + lifestyle. The InstanceProducer on the other hand transforms this Expression to a + delegate and allows the actual instance to be created. A Registration itself can't create any + instance. The InsanceProducer allows intercepting created instances by hooking onto the + Container.ExpressionBuilt event. The + RegisterDecorator methods for + instance work by hooking onto the ExpressionBuilt event and allow wrapping the returned instance + with a decorator. + + + The following example shows the creation of two different InstanceProducer instances that wrap + the same Registration instance. Since the Registration is created using the + Singleton lifestyle, both producers will return + the same instance. The InstanceProducer for the Interface1 however, will wrap that + instance in a (transient) Interface1Decorator. + (container); + + var producer1 = new InstanceProducer(typeof(Interface1), registration); + var producer2 = new InstanceProducer(typeof(Interface2), registration); + + container.RegisterDecorator(typeof(Interface1), typeof(Interface1Decorator)); + + var instance1 = (Interface1)producer1.GetInstance(); + var instance2 = (Interface2)producer2.GetInstance(); + + Assert.IsInstanceOfType(instance1, typeof(Interface1Decorator)); + Assert.IsInstanceOfType(instance2, typeof(ServiceImpl)); + + Assert.AreSame(((Interface1Decorator)instance1).DecoratedInstance, instance2); + ]]> + + + + Initializes a new instance of the class. + The service type for which this instance is created. + The . + + + + Gets the for this registration. The returned lifestyle can differ from the + lifestyle that is used during the registration. This can happen for instance when the registration + is changed by an ExpressionBuilt + registration or gets decorated. + + The for this registration. + + + Gets the service type for which this producer produces instances. + A instance. + + + Gets the instance for this instance. + The . + + + + Creates a new based on the given + and where the will be used as-is; + no interception (using ExpressionBuilt) such as + decorators will be applied. + + The service type for which this instance is created. + The expression that describes the instance to be produced. + The instance for this registration. + A new that describes the expression. + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + + Builds an expression that expresses the intent to get an instance by the current producer. A call + to this method locks the container. New registrations can't be made after a call to this method. + + An Expression. + + + + Gets the collection of relationships for this instance that the container knows about. + This includes relationships between the registered type and its dependencies and relationships + between applied decorators and their dependencies. Note that types that are not newed up by the + container and properties that are injected inside a custom delegate that is registered using the + RegisterInitializer + method are unknown to the container and are not returned from this method. + Also note that this method will return an empty collection when called before the + registered type is requested from the container (or before + Verify is called). + + An array of instances. + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + The various visualization options for building a string representation of + the object graph. + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + Thrown when options is null. + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + or . + + The service type. + + + Initializes a new instance of the class. + The . + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + A map containing a generic argument (such as T) and the concrete type (such as Int32) that it + represents. + + + + Implements equality. Needed for doing LINQ distinct operations. + The other to compare to. + True or false. + + + Overrides the default hash code. Needed for doing LINQ distinct operations. + An 32 bit integer. + + + + Container controlled collections can be supplied with both Type objects or direct Registration + instances. + + + + + Gets a message that describes the current exception. + + T + he error message that explains the reason for the exception, or an empty string(""). + + + + + Allows verifying whether a given type has a direct or indirect dependency on itself. Verifying is done + by preventing recursive calls to an InstanceProducer. A CyclicDependencyValidator instance checks a + single InstanceProducer and therefore a single service type. + + + + + Allows retrieving the concrete types of the generic type arguments of that must be used to create a + closed generic implementation of a given open generic implementation, based on on the concrete + arguments of the given closed base type. + + + + + Helper class for building closed generic type for a given open generic type and a closed generic base. + + + + Result of the GenericTypeBuilder. + + + + A open generic type with the concrete arguments that can be used to create a closed generic type. + + + + + Allows validating an ArgumentMapping. + + + + + Factory for the creation of a delegate that applies caching to the supplied + . + + A factory for creating new instances. + A factory that returns cached instances. + + + + Instances returned from the container can be cached. The contains several + overloads of the Register method that take a Lifestyle instance as argument to define + how returned instances should be cached. The core library contains two lifestyles out of the box. By + supplying Lifestyle.Transient, the registered instance is not + cached; a new instance is returned every time it is requested or injected. By supplying + Lifestyle.Singleton instances can be cached indefinitely; only + a single instance of the registered component will be returned by that container instance. Other + lifestyles are defined in integration and extension packages. The + CreateCustom method allows defining a custom lifestyle and + the CreateHybrid method + allows creating a lifestyle that mixes multiple other lifestyles. + + + This type is abstract and can be overridden to implement a custom lifestyle. + + + + + The lifestyle instance that doesn't cache instances. A new instance of the specified + component is created every time the registered service is requested or injected. + + + The following example registers the SomeServiceImpl implementation for the + ISomeService service type using the Transient lifestyle: + (Lifestyle.Transient); + ]]> + Note that Transient is the default lifestyle, the previous registration can be reduced to + the following: + (); + ]]> + + + + + + The lifestyle that caches components according to the lifetime of the container's configured + scoped lifestyle. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the active scope gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Scoped lifestyle: + (Lifestyle.Scoped); + ]]> + + + + + + The lifestyle that caches components during the lifetime of the instance + and guarantees that only a single instance of that component is created for that instance. Since + general use is to create a single Container instance for the lifetime of the application / + AppDomain, this would mean that only a single instance of that component would exist during the + lifetime of the application. In a multi-threaded applications, implementations registered using + this lifestyle must be thread-safe. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the container gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Singleton lifestyle: + (Lifestyle.Singleton); + ]]> + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the user friendly name of this lifestyle. + The user friendly name of this lifestyle. + + + + Gets the length of the lifestyle. Implementers must implement this property. The diagnostic + services use this value to compare lifestyles with each other to determine lifestyle + misconfigurations. + + The representing the length of this lifestyle. + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The lifestyle to use when + returns true. + The lifestyle to use when + returns false. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + lifestyle.GetCurrentScope(container) != null, + lifestyle, + Lifestyle.Transient); + + var mixedScopeLifestyle = Lifestyle.CreateHybrid( + () => HttpContext.Current != null, + new WebRequestLifestyle(), + mixedLifetimeTransientLifestyle); + ]]> + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Lifetime Scope and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The scoped lifestyle to use when + returns true. + The scoped lifestyle to use when + returns false. + A new scoped hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + + + + Creates a custom lifestyle using the supplied delegate. + + + The supplied will be called just once per registered + service. The supplied will be called by the framework + when the type is resolved for the first time, and the framework will supply the factory with a + Func<object> for creating new (transient) instances of that type (that might + have been intercepted and + initializers might have been applied). + It is the job of the to return a Func<object> + that applies the proper caching. The Func<object> that is returned by the + will be stored for that registration (every + registration will store its own Func<object> delegate) and this delegate will be + called every time the service is resolved (by calling + container.GetInstance<TService> or when that service is injected into another + type). + + The name of the lifestyle to create. The name is used to display the lifestyle + in the debugger. + A factory delegate that takes a Func<object> delegate + that will produce a transient instance and returns a delegate that returns cached instances. + A new . + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is an empty string. + + The following example shows the creation of a lifestyle that caches registered instances for 10 + minutes: + + { + TimeSpan timeout = TimeSpan.FromMinutes(10); + var syncRoot = new object(); + var expirationTime = DateTime.MinValue; + object instance = null; + + // If the application has multiple registrations using this lifestyle, each registration + // will get its own Func delegate (created here) and therefore get its own set + // of variables as defined above. + return () => + { + lock (syncRoot) + { + if (expirationTime < DateTime.UtcNow) + { + instance = instanceCreator(); + expirationTime = DateTime.UtcNow.Add(timeout); + } + + return instance; + } + }; + }); + + var container = new Container(); + + // We can reuse the created lifestyle for multiple registrations. + container.Register(customLifestyle); + container.Register(customLifestyle); + ]]> + + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified caching as + specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances instance using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + + The concrete type that will be registered. + The instance for which a + must be created. + A new or cached instance. + Thrown when is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + This method might fail when run in a partial trust sandbox when + is an internal type. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The delegate that will be responsible for creating new instances. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. An execution context scope flows with the logical execution context. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ExecutionContextScopeLifestyle class: + (Lifestyle.Scoped); + + using (AsyncScopedLifestyle.BeginScope(container)) + { + var instance1 = container.GetInstance(); + // ... + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + This lifestyle can be used to implement ambient context-less scoping in Simple Injector. This lifestyle + can be set as DefaultScopedLifestyle and later used via Lifestyle.Scoped to register scoped instances, + while instances are resolved via Scope.GetInstance. + + + + + Forwards CreateRegistration calls to the lifestyle that is returned from the registered + container.Options.LifestyleSelectionBehavior. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. A scope is thread-specific, each thread should define its own scope. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ThreadScopedLifestyle class: + (Lifestyle.Scoped); + + using (container.BeginLifetimeScope()) + { + var instance1 = container.GetInstance(); + + // This call will return the same instance. + var instance2 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance1, instance2)); + + // Create a nested scope. + using (container.BeginLifetimeScope()) + { + // A nested scope gets its own instance. + var instance3 = container.GetInstance(); + + Assert.IsFalse(object.ReferenceEquals(instance1, instance3)); + + // This call will return the same instance. + var instance4 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance3, instance4)); + } + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterConditional + overload that takes this delegate. This type contains information about the open generic service that + is about to be created and it allows the user to examine the given instance to decide whether this + implementation should be created or not. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the closed generic implementation type that will be created by the container. + + The implementation type. + + + Gets a value indicating whether a previous Register registration has already + been applied for the given . + The indication whether the event has been handled. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + A Registration implements lifestyle based caching for a single service and allows building an + that describes the creation of the service. + + + implementations create a new Registration instance for each registered + service type. s returned from the + BuildExpression method can be + intercepted by any event registered with , have + initializers + applied, and the caching particular to its lifestyle have been applied. Interception using the + Container.ExpressionBuilt will not + be applied in the Registration, but will be applied in . + + See the documentation for an example. + + + + + Initializes a new instance of the class. + + The this that created this registration. + The instance for this registration. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Gets the type that this instance will create. + The type that this instance will create. + + + Gets the this that created this registration. + The this that created this registration. + + + Gets the instance for this registration. + The instance for this registration. + + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. The default is false. Having a value of false, does not force an + instance to be disposed of, though; Transient instances, for instance, will never be disposed of. + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. + + + + Gets or sets a value indicating whether this registration object contains a user + supplied instanceCreator factory delegate. + + + + Builds a new with the correct caching (according to the specifications of + its ) applied. + + An . + + + + Gets the list of instances. Note that the list is only available + after calling . + + A new array containing the instances. + + + + Initializes an already created instance and applies properties and initializers to that instance. + + + This method is especially useful in integration scenarios where the given platform is in control + of creating certain types. By passing the instance created by the platform to this method, the + container is still able to apply any properties (as defined using a custom + ) and by applying any initializers. + + The instance to initialize. + Thrown when is a null + reference (Nothing in VB). + Thrown when the supplied is not + of type . + + + + Suppressing the supplied for the given registration. + + The . + The justification of why the warning must be suppressed. + Thrown when is a null + reference. + Thrown when either is an + empty string or when is not a valid value of . + + + + + Builds a delegate for the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers + that are applicable to the given (if any). + + The interface or base type that can be used to retrieve instances. + + The delegate supplied by the user that allows building or creating new instances. + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds a delegate for the creation of . + The returned might be intercepted by a + Container.ExpressionBuilding event, + and the creation of the will have been wrapped with a + delegate that executes the registered + initializers + that are applicable to the given (if any). + + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds an that describes the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers that are + applicable to the given (if any). + + + The interface or base type that can be used to retrieve instances. + + + The delegate supplied by the user that allows building or creating new instances. + An . + Thrown when one of the arguments is a null reference. + + + + + Builds an that describes the creation of . + The returned might be intercepted + by a Container.ExpressionBuilding + event, and the creation of the will have been wrapped with + a delegate that executes the registered + initializers that are applicable + to the InstanceProducer's ServiceType (if any). + + An . + Thrown when one of the arguments is a null reference. + + + Implements a cache for implementations. + + is thread-safe can be used over multiple threads concurrently, but note that the + cached instances might not be thread-safe. + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The container instance that the scope belongs to. + + + Gets the container instance that this scope belongs to. + The instance. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Adds the to the list of items that will get disposed when the + scope ends. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances are returned + in order of creation/registration. When Scope.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be disposed in opposite + order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + Releases all instances that are cached by the object. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType -or- null if there is no service object of type + . + + + + Releases all instances that are cached by the object. + + False when only unmanaged resources should be released. + + + + Base class for scoped lifestyles. A scoped lifestyle caches instances for the duration of an implicitly + or explicitly defined scope. Such scope can be an (implicitly defined) web request or an explicitly + defined Lifetime Scope. The lifetime of instances registered with a scoped lifestyle is always equal + or bigger than one-instance-per-object-graph. In other words, a call to GetInstance() will never create + more than one instance of such registered type. + + + + + Gets the scoped lifestyle that allows Scoped registrations to be resolved direclty from the + by calling . This allows multiple + scopes to be active and overlap within the same logical context, such as a single thread, or an + asynchronous context. + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Signals the lifestyle whether instances should be + disposed or not. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the length of the lifestyle. + The representing the length of this lifestyle. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The instance. + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Adds the to the list of items that will get disposed when the + scope ends. + + The instance. + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method should never return null. + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + + By default, this method calls the method and invokes the + returned delegate. This method can be overridden to provide an optimized way for getting the + current scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + Internal helper for string resources. + + + + Contains contextual information for creating an implementation type. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + Returns a list of base types and interfaces of implementationType that either + equal to serviceType or are closed or partially closed version of serviceType (in case + serviceType itself is generic). + So: + -in case serviceType is non generic, only serviceType will be returned. + -If implementationType is open generic, serviceType will be returned (or a partially closed + version of serviceType is returned). + -If serviceType is generic and implementationType is not, a closed version of serviceType will + be returned. + -If implementationType implements multiple (partially) closed versions of serviceType, all those + (partially) closed versions will be returned. + + The (open generic) service type to match. + The implementationType to search. + A list of types. + + + Useful extensions on . + + + + Builds an easy to read type name. Namespaces will be omitted, and generic types will be displayed + in a C#-like syntax. Ideal for reporting type names in exception messages. + + The type to convert. + A human-readable string representation of that type. + Thrown when the supplied argument is a null reference. + + + + Returns true is there is a closed version of the supplied + that is assignable from the current . This method returns true when either + itself, one of its base classes or one of its implemented interfaces is a + closed version of ; otherwise false. + + The type to check. + The generic type definition to match. + True when type is assignable; otherwise false. + + + + Gets the single closed version of that the current + is assignable from. In case none or multiple matching closed types are + found, and exception is thrown. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + The matching closed type. + Thrown when one of the arguments is a null reference. + Thrown when is not + a generic type or when none of the base classes or implemented interfaces of + are closed-versions of . + Thrown when multiple matching closed generic types + are found. + + + + Gets the list of closed versions of that the current + is assignable from. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + A list of matching closed generic types. + + + + Defines options to control the types returned from the + GetTypesToRegister + method. For a type to be returned, it should match all the conditions described by the class's + properties. In other words, in case the searched assembly contains a generic type, that is both a + decorator and a composite, it will only be returned by GetTypesToRegister in case both + , and + are set to true. + + + + Initializes a new instance of the class. + + + + Gets or sets a value indicating whether decorator types should be included in the result. The default + value of this property is false. A type is considered a decorator if the type's constructor + contains a parameter of the type that exactly matches the serviceType argument, + supplied to the + GetTypesToRegister + method, or when there is a argument where T matches the + serviceType argument. + + A boolean. + + + + Gets or sets a value indicating whether generic type definitions (types that have + Type.IsGenericTypeDefinition + set to true) + should be included in the result. The default value for this property is false. + + A boolean. + + + + Gets or sets a value indicating whether composite types should be included in the result. The default + value of this property is true. A type is considered a composite if the type's constructor + contains a parameter of IEnumerable<T>, ICollection<T>, + IList<T>, IReadOnlyCollection<T>, + IReadOnlyList<T> or T[] (array of T), where T + exactly matches the serviceType argument, supplied to the + GetTypesToRegister + method. + + A boolean. + + + + Provides data for and interaction with the + ResolveUnregisteredType event of + the . An observer can check the + to see whether the unregistered type can be handled. The + method can be called to register a delegate + that allows creation of instances of the unregistered for this and future requests. + + + + Gets the unregistered service type that is currently requested. + The unregistered service type that is currently requested. + + + + Gets a value indicating whether the event represented by this instance has been handled. + This property will return true when has been called on + this instance. + + The indication whether the event has been handled. + + + + Registers a delegate that allows creation of instances of the type + expressed by the for this and future requests. The delegate + will be caches and future requests will directly call that delegate. + + The delegate that allows creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers an that describes the creation of instances of the type + expressed by the for this and future requests. The delegate + will be cached and future requests will directly use that expression or the compiled delegate. + + + NOTE: If possible, use the Register(Registration) overload, + since this allows the analysis services to determine any configuration errors on the lifestyle of + the registration. + + The expression that describes the creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers a that describes the creation of instances of the type + expressed by the for this and future requests. The + registration will be cached and future requests will directly call unon that registration, the + expression that it generates or the delegate that gets compiled from that expression. + + The registration that describes the creation of instances according to + the registration's lifestyle of the type expressed by the . + Thrown when the is a + null reference. + Thrown when the is a + not exactly of type where T equals the . + + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + This enumeration defines in which way the container should run the verification process. + + + + + Specifies that the container performs verification only, which means that it will test whether + all registrations can be constructed by iterating the registrations and letting the container + create at least one instance of each registration. An + will be thrown in case the configuration is invalid. + + + + + Specifies that the container will run diagnostic analysis after the verification succeeded. The + container will diagnose the configuration with a subset of the available diagnostic warnings, that + are most likely an indication of a configuration mistake. A complete set of diagnostic warnings + can be retrieved by calling + Analyzer.Analyze or by viewing the + container in the Visual Studio debugger, after the verification has succeeded. + + + + + Visualization options for providing various information about instances. + + + + + Gets or sets a value indicating whether to include lifestyle information in the visualization. + + The value to include life style information. + + + + Gets or sets a value indicating whether to use fully qualified type names in the visualization. + + The value to use fully qualified type names. + + + diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.CopyComplete b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.CoreCompileInputs.cache b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..5b78622 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +bbdc5beca1379ceb71a148902226f730b0779bc4 diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.FileListAbsolute.txt b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..6b06800 --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csproj.FileListAbsolute.txt @@ -0,0 +1,20 @@ +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Infra.IoC.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Infra.IoC.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\obj\Debug\AvaliacaoMinutoSeguros.Infra.IoC.csprojAssemblyReference.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\obj\Debug\AvaliacaoMinutoSeguros.Infra.IoC.csproj.CoreCompileInputs.cache +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\obj\Debug\AvaliacaoMinutoSeguros.Infra.IoC.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\obj\Debug\AvaliacaoMinutoSeguros.Infra.IoC.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Domain.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Infra.Data.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\SimpleInjector.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Domain.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Infra.Data.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\SimpleInjector.xml +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\obj\Debug\AvaliacaoMinutoSeguros.Infra.IoC.csproj.CopyComplete +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Business.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AutoMapper.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Business.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AutoMapper.pdb +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AutoMapper.xml +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.dll +C:\Works\AvaliacaoMinutoSeguros\oportunidade\AvaliacaoMinutoSeguros.Infra.IoC\bin\Debug\AvaliacaoMinutoSeguros.Infra.Helps.pdb diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csprojAssemblyReference.cache b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csprojAssemblyReference.cache new file mode 100644 index 0000000..c67a093 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.csprojAssemblyReference.cache differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll new file mode 100644 index 0000000..2d41c6a Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.dll differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb new file mode 100644 index 0000000..a82075a Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/AvaliacaoMinutoSeguros.Infra.IoC.pdb differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..487f606 Binary files /dev/null and b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/AvaliacaoMinutoSeguros.Infra.IoC/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/AvaliacaoMinutoSeguros.Infra.IoC/packages.config b/AvaliacaoMinutoSeguros.Infra.IoC/packages.config new file mode 100644 index 0000000..5a0e8ee --- /dev/null +++ b/AvaliacaoMinutoSeguros.Infra.IoC/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/AvaliacaoMinutoSeguros.sln b/AvaliacaoMinutoSeguros.sln new file mode 100644 index 0000000..e6269e8 --- /dev/null +++ b/AvaliacaoMinutoSeguros.sln @@ -0,0 +1,62 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28307.1062 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvaliacaoMinutoSeguros.Domain", "AvaliacaoMinutoSeguros.Domain\AvaliacaoMinutoSeguros.Domain.csproj", "{9A75E813-824F-4E5E-BE63-7A8007961367}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvaliacaoMinutoSeguros.Infra.IoC", "AvaliacaoMinutoSeguros.Infra.IoC\AvaliacaoMinutoSeguros.Infra.IoC.csproj", "{545B4ADB-958F-48DE-8AFE-72B7E53A2371}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvaliacaoMinutoSeguros.Infra.Data", "AvaliacaoMinutoSeguros.Infra.Data\AvaliacaoMinutoSeguros.Infra.Data.csproj", "{0E3CE559-08B4-431B-9E90-EF2EBAC396FC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvaliacaoMinutoSeguros.Business", "AvaliacaoMinutoSeguros.Business\AvaliacaoMinutoSeguros.Business.csproj", "{DB6A7603-577A-40ED-9349-4D1DDEEF2731}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvaliacaoMinutoSeguros.App", "AvaliacaoMinutoSeguros.App\AvaliacaoMinutoSeguros.App.csproj", "{F9250B32-FA0B-48B4-B012-279E49BB7147}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvaliacaoMinutoSeguros.Infra.Helps", "AvaliacaoMinutoSeguros.Infra.Helps\AvaliacaoMinutoSeguros.Infra.Helps.csproj", "{C2AF061D-F5FC-4AD9-9481-04ACBA0DC424}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Infra", "Infra", "{284D55DD-8716-4187-A140-F411F3003D84}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {9A75E813-824F-4E5E-BE63-7A8007961367}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9A75E813-824F-4E5E-BE63-7A8007961367}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9A75E813-824F-4E5E-BE63-7A8007961367}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9A75E813-824F-4E5E-BE63-7A8007961367}.Release|Any CPU.Build.0 = Release|Any CPU + {545B4ADB-958F-48DE-8AFE-72B7E53A2371}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {545B4ADB-958F-48DE-8AFE-72B7E53A2371}.Debug|Any CPU.Build.0 = Debug|Any CPU + {545B4ADB-958F-48DE-8AFE-72B7E53A2371}.Release|Any CPU.ActiveCfg = Release|Any CPU + {545B4ADB-958F-48DE-8AFE-72B7E53A2371}.Release|Any CPU.Build.0 = Release|Any CPU + {0E3CE559-08B4-431B-9E90-EF2EBAC396FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0E3CE559-08B4-431B-9E90-EF2EBAC396FC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0E3CE559-08B4-431B-9E90-EF2EBAC396FC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0E3CE559-08B4-431B-9E90-EF2EBAC396FC}.Release|Any CPU.Build.0 = Release|Any CPU + {DB6A7603-577A-40ED-9349-4D1DDEEF2731}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DB6A7603-577A-40ED-9349-4D1DDEEF2731}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DB6A7603-577A-40ED-9349-4D1DDEEF2731}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DB6A7603-577A-40ED-9349-4D1DDEEF2731}.Release|Any CPU.Build.0 = Release|Any CPU + {F9250B32-FA0B-48B4-B012-279E49BB7147}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F9250B32-FA0B-48B4-B012-279E49BB7147}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F9250B32-FA0B-48B4-B012-279E49BB7147}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F9250B32-FA0B-48B4-B012-279E49BB7147}.Release|Any CPU.Build.0 = Release|Any CPU + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {545B4ADB-958F-48DE-8AFE-72B7E53A2371} = {284D55DD-8716-4187-A140-F411F3003D84} + {0E3CE559-08B4-431B-9E90-EF2EBAC396FC} = {284D55DD-8716-4187-A140-F411F3003D84} + {C2AF061D-F5FC-4AD9-9481-04ACBA0DC424} = {284D55DD-8716-4187-A140-F411F3003D84} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {ACF9AD00-6802-41D6-AC33-E14A09835A56} + EndGlobalSection +EndGlobal diff --git a/PaginaFeed.html b/PaginaFeed.html new file mode 100644 index 0000000..fecda9d --- /dev/null +++ b/PaginaFeed.html @@ -0,0 +1,660 @@ + + + + Blog Minuto Seguros + + https://www.minutoseguros.com.br/blog + Aqui no blog da Minuto Seguros você encontra dicas e notícias sobre seguros, carros, casas, eletrônicos, viagens e muito mais. Acesse e confira nosso conteúdo + Tue, 10 Mar 2020 14:16:12 +0000 + pt-BR + hourly + 1 + https://wordpress.org/?v=5.2.5 + + O valor do seguro dos carros mais vendidos do Brasil em fevereiro + https://www.minutoseguros.com.br/blog/o-valor-do-seguro-dos-carros-mais-vendidos-do-brasil-em-fevereiro/ + https://www.minutoseguros.com.br/blog/o-valor-do-seguro-dos-carros-mais-vendidos-do-brasil-em-fevereiro/#respond + Tue, 10 Mar 2020 12:28:07 +0000 + + + + + + + http://www.minutoseguros.com.br/blog/?p=23161 + O preço do seguro dos carros mais vendidos do Brasil para as mulheres ficou mais barato em seis dos 10 modelos presentes na lista. Para o público masculino, o mini-SUV Renault Kwid apresentou a cotação média com o menor preço.

+

O post O valor do seguro dos carros mais vendidos do Brasil em fevereiro apareceu primeiro em Blog Minuto Seguros.

]]>
+ A Minuto Seguros, uma das principais corretoras do País e líder no segmento de seguros online, acaba de realizar um estudo com base na lista divulgada pela Fenabrave (Federação Nacional da Distribuição de Veículos Automotores) com preço do seguro dos carros mais vendidos no Brasil em fevereiro.

+

seguro dos carros mais vendidos, kwid

+

O Onix, da Chevrolet, continua com larga vantagem como o carro mais vendido do Brasil. O hatch da montadora americana, que desde 2015 ocupa a 1ª colocação, fechou fevereiro com 17.652 unidades comercializadas. Com relação ao preço médio do seguro, após registrar queda em janeiro, o modelo teve alta de 10,6%. No mês passado, o valor ficou em R$ 2.020, enquanto em fevereiro, a média foi de R$ 2.234 para o público masculino. Para as mulheres, o preço passou de R$ 1.543 para R$ 1.643, uma elevação de 6,5%.

+

Seguro dos carros mais vendidos: queda no preço do Onix Plus para as mulheres

+

Consolidado na 2ª posição desde outubro de 2019, o Onix Plus se manteve estável em relação ao preço médio do seguro para o perfil feminino: R$ 1.868, um real a menos do que o cotado em janeiro. Ainda dentro das cotações para as mulheres, chamou a atenção a queda acentuada registrada no preço para o Rio de Janeiro. Em fevereiro, o valor ficou R$ 666 mais barato do que no primeiro mês do ano, uma redução de quase 23%. No que diz respeito ao preço médio do seguro entre as capitais cotadas para o público masculino, houve elevação de 4,8% em comparação a janeiro.

+

Após três meses fora do Top 3, o HB20 alavancou as vendas e foi o 3º veículo com mais unidades emplacadas em fevereiro, superando o KA, dono da posição até então. Com relação ao preço do seguro, boas notícias para quem é de São Paulo e do Rio de Janeiro. Em ambas as capitais o valor apresentou uma redução para o público masculino. Na cidade paulista, os homens pagam R$ 21 a menos no seguro do HB20 em relação a janeiro, enquanto para os cariocas o valor diminuiu R$ 125.

+

COTE SEGURO AUTO GRÁTIS

+

Ford KA registra o menor preço do seguro para mulheres; Kwid é o mais barato para os homens

+

Presente entre os três primeiros colocados desde outubro de 2019, o KA perdeu o posto para o HB20 e ficou na 4ª colocação entre os carros mais vendidos do Brasil em fevereiro. No entanto, com relação ao preço do seguro, ele continua sendo uma das opções mais baratas. Para as mulheres, pelo segundo mês consecutivo, o hatch da Ford registrou o menor preço. Sua cotação média foi de R$ 1.455, apenas 2% a mais do que o levantado em janeiro. Já para o público masculino, o valor ficou em R$ 2.197, uma elevação de 5,5% em comparação com o primeiro mês de 2020.

+

Já para o público masculino, o valor médio mais baixo em fevereiro ficou com o Kwid. O mini-SUV registrou o preço de R$ 2.117 entre as capitais cotadas, 5,7% a mais do que o mostrado no levantamento de janeiro, que foi de R$ 2.002. Para as mulheres, as cotações envolvendo o veículo mais vendido da Renault foram positivas. Houve redução de 5,5% no preço do seguro em relação a janeiro. De R$ 1.610 para R$ 1.522, o que, em reais, significa uma diminuição de R$ 88.

+

Seguro do Gol fica mais barato para as mulheres

+

Fora da lista em janeiro, o T-Cross retornou ao Top 10 no segundo mês do ano, sendo mais um dos modelos a apresentar redução no preço médio do seguro para o público feminino. O valor registrado foi de R$ 2.553, o que significa 1,4% a menos do que mostrado na primeira cotação de 2020. Para os homens, o valor ficou em R$ 3.533. Outro modelo a ter o preço do seguro reduzido para elas foi o Gol, cujo valor ficou 10,5% mais barato: de R$ 2.140, em janeiro, para R$ 1.914, em fevereiro. No que diz respeito aos homens, o carro mais vendido da Volkswagen teve a cotação média de R$ 2.954.

+

Na 8ª posição dos carros mais vendidos do Brasil em janeiro, o Argo subiu duas posições e terminou fevereiro como o 6º colocado. Além disso, foi mais um modelo em que o preço do seguro para as mulheres baixou em relação ao mês anterior: 3%, já que passou de R$ 1.929 em para R$ 1.872. Para o público masculino, houve elevação de 13,2% no preço do seguro para o modelo da Fiat, que fechou o mês com o valor médio de R$ 2.624. O Novo Polo, na 7ª posição, ficou com a cotação média para o público feminino em R$ 1.679, o que significa 7% a menos do que o preço de janeiro. Já os homens pagam, em média, R$ 2.527 para o seguro do sedã da montadora alemã.

+

Análise do preço do seguro dos carros mais vendidos

+

O preço médio do seguro de todos os 10 veículos da lista entre as capitais cotadas foi de R$ 2.725 para os homens e de R$ 1.903 para as mulheres.

+

O valor médio do seguro mais barato para o público masculino, em janeiro, ficou com o Renault Kwid. No levantamento realizado, os homens pagam R$ 2.117. Enquanto isso, o posto de valor médio do seguro mais alto ficou com o Renegade: R$ 3.739. Para as mulheres, o menor preço médio do seguro registrado em janeiro foi o do Ford KA: R$ 1.455. O mais caro foi, assim como para o público masculino, o Renegade: R$ 2.735.

+

Para realizar o estudo, a Minuto Seguros considerou como perfil um condutor homem e uma condutora mulher, de 35 anos, ambos casados. Foram avaliados os preços dos seguros em cinco capitais: São Paulo (SP), Rio de Janeiro (RJ), Campo Grande (MS), Porto Alegre (RS) e Salvador (BA).

+

Quem paga menos pelo seguro dos carros mais vendidos?

+

Perfil masculino

+

Dentro destes perfis mencionados, o preço do seguro para o Kwid é o que apresenta a menor diferença entre as capitais cotadas para homens. O valor mais alto está No Rio de Janeiro, com R$ 2.363, e o menor em Salvador, por R$ 1.935, uma distância de R$ 428. No contraponto de diferença de valores, ainda citando o público masculino, o Renegade é o que possui a maior diferença entre estados: R$ 1.964. A mais alta também no Rio de Janeiro, R$ 4.940, e a menor em Campo Grande, com R$ 2.976.

+

Para os homens, Campo Grande é a cidade com seguro mais barato: seis dos dez carros. Nos seguros com valores mais altos, o Rio de Janeiro é a cidade que detém os maiores preços: sete dos dez modelos. A capital do Mato Grosso do Sul registrou, também, o menor preço entre todos os modelos cotados no perfil masculino: R$ 1.810 para o Onix. O preço médio do seguro para homens, em São Paulo, para os 10 carros mais vendidos é de R$ 2.570, já no Rio de Janeiro, o valor é de R$ 3.140.

+

Perfil feminino

+

Agora, falando no perfil feminino, o Onix é o que apresenta a menor diferença entre as capitais cotadas, com uma diferença de R$ 294, do valor mais alto, que está no Rio de Janeiro, com R$ 1.746, para o mais baixo, que está em Porto Alegre, com R$ 1.452. Em outra comparação, o Renegade ficou com a maior distância de valores: R$ 1.207. A maior no Rio, com R$ 3.532 e a menor, em Campo Grande, com R$ 2.325.

+

No âmbito do público feminino, Florianópolis também é a cidade com o seguro mais barato: oito dos dez carros. Já os valores maiores estão concentrados no Rio de Janeiro: sete dos dez veículos cujo seguro tem maior preço ficam na capital carioca. O menor valor entre todos os modelos e capitais cotados no perfil feminino ficou com São Paulo: R$ 1.122 para o KA. O preço médio do seguro na capital paulista, para as mulheres, ficou em R$ 1.751 e no Rio de Janeiro, R$ 2.239.

+

Preço do seguro dos carros mais vendidos em fevereiro

+

Público feminino

+

perfil feminino

+

Público masculino

+

perfil masculino

+

O post O valor do seguro dos carros mais vendidos do Brasil em fevereiro apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/o-valor-do-seguro-dos-carros-mais-vendidos-do-brasil-em-fevereiro/feed/ + 0 +
+ + Viagem para o Caribe: melhores destinos para o roteiro + https://www.minutoseguros.com.br/blog/viagem-para-o-caribe-melhores-destinos/ + https://www.minutoseguros.com.br/blog/viagem-para-o-caribe-melhores-destinos/#respond + Mon, 09 Mar 2020 14:37:32 +0000 + + + + + + + + + + + + http://www.minutoseguros.com.br/blog/?p=27393 + O Caribe oferece aos turistas muito conforto e tranquilidade com as praias e toda a natureza ao seu redor, mas também há opções de passeios com entretenimento e noites agitadas nas festas e bares, basta escolher o lugar certo no seu roteiro.

+

O post Viagem para o Caribe: melhores destinos para o roteiro apareceu primeiro em Blog Minuto Seguros.

]]>
+ É normal ficar indeciso para escolher qual destino visitar, principalmente na época do verão. Afinal, são muitas opções de lugares para curtir o calor, como praias do Nordeste, parques aquáticos no Brasil e até ir mais além e fazer aquela tão sonhada viagem para o Caribe. Especialmente no caso da última opção, é ideal ter um planejamento para fazer a melhor trip possível. Portanto, veja nossas dicas para montar o seu roteiro pelo Caribe.

+

viagem para o Caribe

+

O Caribe, por muitas vezes, é retratado em programas de TV, filmes e documentários como um dos locais mais paradisíacos para curtir uma temporada de calor. O cenário por lá conta com águas cristalinas predominantes nas praias, areia branca e fofa e muitas atividades e locais voltados ao entretenimento dos turistas.

+

Além disso, existem diversas ilhas e ilhotas que possuem peculiaridades e atrativos para interesse do turista. Esse conjunto todo faz com que uma viagem para o Caribe seja, de fato, uma das melhores e mais bonitas no mundo.

+

Contratação do seguro viagem para o Caribe

+

Mas antes de viajar para o Caribe é necessário pensar na sua segurança e tranquilidade durante o passeio, especialmente por se tratar de uma estadia fora do Brasil. E para isso, a contratação do seguro viagem é essencial.

+

O seguro proporciona proteção contra diversos riscos impossíveis de prever quando acontecerão, como extravio de bagagem ou necessidade de um atendimento médico. Dessa forma, o sucesso da trip é garantido mesmo que haja imprevistos complicados.

+

Para fazer uma cotação, conte com a Minuto Seguros, afinal, somos a maior corretora online do Brasil e trabalhamos com as principais seguradoras do mercado. Basta preencher o formulário de cotação clicando no botão abaixo ou, se preferir, ligar grátis para 0800 773 3000 e falar diretamente com um consultor.

+

CLIQUE PARA COTAR SEGURO VIAGEM

+

Agora que o seguro já está contratado, podemos seguir com as dicas de destinos para incluir no seu roteiro aproveitar em uma viagem no Caribe

+

Viagem para o Caribe

+

Em primeiro lugar, ao planejar quais destinos serão visitados no passeio, é necessário identificar qual é o seu objetivo no Caribe. Isso porque existem diversos costumes, culturas e idiomas diferentes entre as ilhas e regiões que lá se encontram.

+

Além disso, há lugares ideais para ter descanso e tranquilidade durante todo o dia ou, se o viajante preferir, também há a possibilidade de aproveitar a vida noturna e animada com festas e baladas.

+

Portanto, selecione aqueles pontos que melhor representam suas intenções com o roteiro.

+

3 melhores destinos em uma viagem para o Caribe

+
    +
  1. +

    1. Anguilla

    +
  2. +
+

viagem para o Caribe - Anguilla

+

Anguilla, essa pequena ilha que fica localizada no mar do Caribe, é famosa por entregar aos visitantes praias maravilhosas. Algumas até parecem cenários de filmes, com águas azuladas e transparentes, areia branca e muito fofa.

+

Entretanto, a estadia por lá pode sair por um alto custo, tanto de hospedagem quanto para as atividades do dia a dia, como alimentação, passeios e afins. Isso ocorre pelo alto padrão e privilégio de estar em um cenário tão especial quanto esse.

+

Além disso, em uma viagem para o Caribe, este local é um dos mais procurados por celebridades, o que, invariavelmente, faz o preço subir.

+

A ilha de Anguilla é um lugar indicado para as pessoas que estão buscando relaxar, longe de festas, baladas e curtição. Até mesmo devido ao tamanho da ilha, que é muito pequena, não há muitas opções a não ser visitar as praias e realizar passeios na natureza.

+

Portanto, para aqueles viajantes que ainda querem ter um entretenimento além das praias, recomenda-se escolher um hotel com estas opções em suas dependências.

+

COTE SEGURO VIAGEM PARA ANGUILLA

+
    +
  1. +

    2. Aruba

    +
  2. +
+

viagem para o Caribe - Aruba

+

Quem já foi a Cancun talvez vá familiarizar-se totalmente com Aruba. Afinal, existem muitas semelhanças entre os dois lugares.

+

Uma curiosidade sobre este destino é que, diferentemente de Anguilla, ilha que mencionamos anteriormente, Aruba foi colonizada por holandeses e atualmente tem uma predominância de norte-americanos em seu território.

+

Mas o grande diferencial mesmo de Aruba é a rede hoteleira na beira da areia, o que atrai muitos turistas e até nativos. Isso permite que os visitantes tenham uma vista para o mar incrível, proporcionando lindas paisagens em diversos momentos do dia, como no nascer ou pôr do sol, por exemplo.

+

Aruba é indicada, também, para os turistas que procuram por descanso e lazer, mas com um diferencial: poder fazer algumas compras, comer em restaurantes dos mais diferentes estilos gastronômicos e curtir a vida noturna.

+
    +
  1. +

    3. Cozumel

    +
  2. +
+

Cozumel

+

Como última opção de destino de nosso texto sobre viajar para o Caribe, temos a ilha Cozumel, localizada no México.

+

Para diferenciar-se dos outros lugares, este destino é para quem busca principalmente a prática de esportes e um pouco mais de aventura. O local é indicado para mergulhadores que querem explorar a vida marinha e quem busca um mar limpo, bonito e com poucas pessoas, sem aglomerações.

+

Além disso, Cozumel é um dos pontos mais interessantes em uma viagem para o Caribe, pois por lá concentra-se a parada de enormes navios que passeiam pelo Mar do Caribe em luxuosos cruzeiros.

+

No que se refere aos pontos gastronômicos, a ilha tem opções de restaurantes e bares bem avaliados, além de lojinhas menores, se comparadas a Aruba, para fazer compras de souvenires ou lembrancinhas.

+

Mas o foco de Cozumel, realmente, é o mergulho. A ilha é conhecida como um dos melhores lugares do mundo para o esporte. Portanto, se estiver em uma viagem para o Caribe e quiser fazer mergulho, já sabe onde ir.

+

Agora você já está pronto para partir em sua viagem para o Caribe. Se houver dúvidas ou sugestões, deixe nos comentários abaixo!

+

O post Viagem para o Caribe: melhores destinos para o roteiro apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/viagem-para-o-caribe-melhores-destinos/feed/ + 0 +
+ + Seguro de carro para mulheres é até 23% mais barato do que para homens + https://www.minutoseguros.com.br/blog/seguro-de-carro-para-mulheres/ + https://www.minutoseguros.com.br/blog/seguro-de-carro-para-mulheres/#respond + Fri, 06 Mar 2020 18:46:50 +0000 + + + + + + http://www.minutoseguros.com.br/blog/?p=27469 + Público feminino é considerado de menor risco pelas seguradoras. Preço do seguro é mais barato, em média, em todos os cenários. Isso está relacionado diretamente com o fato de ser um público cujos riscos de sinistros serem mais baixos.

+

O post Seguro de carro para mulheres é até 23% mais barato do que para homens apareceu primeiro em Blog Minuto Seguros.

]]>
+ A Minuto Seguros, uma das maiores corretoras do Brasil e líder no segmento online, acaba de realizar um estudo sobre o segmento de seguro de carro para mulheres, em que aborda, principalmente, a diferença de valores em relação ao público masculino e os aspectos que estão por trás desse fator.

+

seguro de carro para mulheres

+

De acordo com o levantamento realizado pela Minuto, o preço do seguro de carro para as mulheres é menor do que para os homens em todos os cenários levados em conta: média de valores entre estados, faixa etária e categorias de automóvel por preço.

+

Entre as localidades utilizadas como base para o estudo, as mulheres pagam, em média, 15% a menos do que os homens. No Distrito Federal, a diferença no valor do seguro é de 20%. Já no Paraná, o preço para o público feminino é 19% menor, enquanto no Pará é de 16%, em São Paulo de 14%, e na Bahia, de 10%.

+

COTE SEGURO AUTO MULHER GRÁTIS

+

Quando se fala em diferenças de preços por faixa etária, novamente o público feminino possui, de maneira geral, cotações de seguro mais em conta quando se compara ao valor para os homens. Para as mulheres de até 25 anos o preço é, em média, 23% mais barato.

+

Na faixa entre 26 e 30 anos, o valor que o público feminino paga é 17% menor, em média. Já de 31 a 35 anos, no geral, a diferença é de 20%, enquanto entre 36 e 40 anos é de 16%. De 41 a 50 anos, o preço é 12% mais baixo e para mulheres de 50 anos ou mais, a variação para menos fica na casa dos 3%.

+

Categorias de veículo também mostram diferença nos valores

+

Em comparação que leva em conta as diferentes faixas de preço de veículos, as mulheres também recebem uma cotação, em média, menor do que os homens. Entre os automóveis que custam de R$ 70 mil a R$ 100 mil, por exemplo, elas pagam 18% a menos do que eles, a maior diferença considerando este quesito. A menor diferença está na faixa dos veículos de valor entre R$ 20 mil e R$ 25 mil, com 6% que, ainda assim, mostra que o preço para público feminino é mais baixo.

+

Já para carros cujo valor fica na casa dos R$ 25 mil a R$ 30 mil, o valor do seguro é 11% mais baixo para o público feminino, mesma porcentagem para a faixa dos veículos que custam entre R$ 35 mil a R$ 40 mil. De R$ 40 mil a R$ 55 mil, o preço médio é 14% menor. Por fim, na faixa que compreende automóveis entre R$ 55 mil e R$ 70 mil, a diferença é de 11% a menos no valor do seguro para mulheres.

+

Riscos menores contribuem para que seguro de carro para mulheres tenha melhores preços

+

O preço mais baixo para as mulheres na cotação do seguro está relacionado diretamente com o fato de ser um público cujos riscos de sinistros são menores, como explica o sócio-diretor da Minuto Seguros, Manes Erlichman.

+

“De forma geral, as mulheres são mais cuidadosas ao volante, se envolvem em menos acidentes e, normalmente, os danos causados neles são menores do que os causados em acidentes com motoristas do sexo masculino. Isso se reflete diretamente no preço do seguro”, afirma Manes.

+

De acordo com dados da SUSEP (Superintendência de Seguros Privados), o total de sinistros que ocorrem com mulheres gera valores menores de indenização do que os que acontecem com os homens, o que ajuda a explicar o fato do público feminino ser considerado de menor risco por parte das seguradoras.

+

Para se ter uma ideia, a soma das indenizações pagas às mulheres representa cerca de 63% do total do valor segurado. Isso significa que a cada 100 reais de prêmios de seguro pagos por elas, a indenização que recebem é de 63. No que diz respeito aos homens, as indenizações são equivalentes a algo em torno de 66% do total segurado.

+

Os dados da SUSEP levantados pela Minuto Seguros englobam números dos estados da Bahia e do Pará, do Distrito Federal e das regiões metropolitanas de São Paulo/SP e Curitiba/PR.

+

Detalhes do estudo:

+

Dados sobre preços de seguro: cotações iniciais de mulheres e homens realizadas pela Minuto até novembro de 2019 nos seguintes estados: São Paulo, Paraná, Bahia, Pará e Distrito Federal (uma localidade em cada região do Brasil).

+

COTE SEGURO AUTO GRÁTIS

+

 

+

 

+

 

+

O post Seguro de carro para mulheres é até 23% mais barato do que para homens apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/seguro-de-carro-para-mulheres/feed/ + 0 +
+ + Seguro Empresarial: como funciona e o que cobre? + https://www.minutoseguros.com.br/blog/seguro-empresarial-como-funciona-e-o-que-cobre/ + https://www.minutoseguros.com.br/blog/seguro-empresarial-como-funciona-e-o-que-cobre/#respond + Wed, 04 Mar 2020 21:15:14 +0000 + + + + + + + + + http://www.minutoseguros.com.br/blog/?p=27447 + Todo mundo que possui um negócio próprio sabe o quanto é preciso se desdobrar para construir uma empresa que possa prosperar. As companhias precisam de resguardo diante dos riscos existentes. É por isso que existe o seguro empresarial.

+

O post Seguro Empresarial: como funciona e o que cobre? apareceu primeiro em Blog Minuto Seguros.

]]>
+ Todo mundo que possui um negócio próprio sabe o quanto é preciso se desdobrar para construir uma empresa que possa prosperar. Seja comércio, restaurante, fábrica, startup, entre outros segmentos, todas as companhias precisam de segurança para operar resguardadas dos riscos existentes. É por isso que existe o seguro empresarial, do qual falaremos na sequência do texto.

+

seguro empresarial

+

O que é o Seguro Empresarial?

+

O seguro empresarial é uma categoria do mundo dos seguros que visa proteger a empresa de diversos riscos sob os mais diversos aspectos. Isso engloba desde o patrimônio físico da companhia até os seus funcionários. Afinal, quem possui um negócio precisa ter a segurança de que eventuais imprevistos não vão impedir sua continuidade ou causar grandes prejuízos.

+

Assim como outros tipos de seguro, o para empresas também possui uma série de particularidades e coberturas diferenciadas. O intuito é proporcionar proteção e segurança para todos os tipos de companhias, exatamente de acordo com as necessidades específicas de cada uma.

+

Como funciona o seguro para empresas?

+

Para atender adequadamente todas as necessidades da companhia, o seguro para empresas engloba diferentes modalidades. Entre elas estão o seguro patrimonial, seguro saúde, seguro de vida em grupo e seguro odontológico.

+

Cada uma delas possui o intuito de proteger a empresa de determinados riscos. O patrimonial, por exemplo, tem como objetivo resguardar os bens da companhia de incêndios, acidentes naturais e roubo ou furto, de acordo com o que estiver contratado na apólice. Já os demais são voltados à proteção dos funcionários. Por isso, são considerados como benefícios para os colaboradores.

+

CLIQUE PARA COTAR SEGURO EMPRESARIAL

+

Seguro Patrimonial

+

cobertura de patrimônio

+

Quando se fala em seguro para empresas, o patrimonial é o mais lembrado, pois protege diretamente os patrimônios, como o próprio nome já diz, que a companhia possui.

+
    +
  • – Proteção contra incêndio: entre as principais coberturas dessa modalidade está a cobertura contra o incêndio. Com ela, a empresa fica resguardada em caso de fogo que se alastre e cause prejuízos. De acordo com o que for contratado, ela pode valer tanto para incêndios iniciados dentro do próprio local quanto para os que tiveram origem em outros lugares, como imóveis vizinhos.
  • +
  • +
  • – Roubo e furto: a cobertura contra roubo e furto também protege financeiramente a empresa em caso de subtração de bens. Portanto, se a companhia for alvo de criminosos, o patrimônio levado será indenizado pela seguradora.
  • +
  • +
  • – Desastres naturais: também é possível contar com a cobertura contra desastres naturais. Esta proteção visa garantir a tranquilidade dos proprietários da companhia em situações como tempestades, chuvas de granizo, deslizamentos de terra e inundações, por exemplo. Neste caso, a seguradora ressarce os prejuízos causados principalmente à estrutura física onde a empresa se encontra.
  • +
  • +
  • – Responsabilidade Civil: a cobertura de responsabilidade civil tem como objetivo oferecer proteção diante de possíveis ações judiciais, reclamações ou outros danos involuntários que sejam causados a terceiros (funcionários, fornecedores, clientes ou prestadores de serviço) e seus bens.
  • +
  • +
  • – Pagamento de aluguel: trata-se de outra importante cobertura que faz parte das opções a serem contratadas dentro do seguro empresarial. Em caso de algum sinistro que comprometa a saúde financeira do segurado, essa proteção garante o custeamento de despesas com aluguel e condomínio, por exemplo, de acordo com o que consta na apólice.
  • +
+

CLIQUE PARA COTAR SEGURO PME

+

Seguro Saúde

+

atendimento médico

+

Como dissemos anteriormente, a cobertura de saúde é um dos benefícios do seguro empresarial voltado ao bem-estar dos funcionários da companhia. Portanto, esse é um produto que beneficia o colaborador e, consequentemente, também é um atrativo para o recrutamento de pessoas.

+

O seguro saúde possibilita que o colaborador tenha um suporte completo para cuidar da sua saúde. Isso inclui, por exemplo, a realização de exames e consultas em rede referenciada. Além disso, geralmente o plano contempla internações e reembolso – caso o segurado queira utilizar os serviços de profissionais fora da rede oferecida pela seguradora.

+

CLIQUE PARA COTAR SEGURO SAÚDE

+

Seguro de Vida em Grupo

+

Esta é mais uma categoria do seguro empresarial que beneficia o funcionário. O seguro de vida em grupo cobre acidentes que resultem em morte ou invalidez.

+

De acordo com a função do colaborador, pode ser obrigatório para a empresa proporcionar esse seguro. Isso é definido pelo sindicato ou órgão responsável pela categoria e também pode variar de estado para estado.

+

CLIQUE PARA COTAR SEGURO DE VIDA EM GRUPO

+

Seguro Odontológico

+

O seguro odontológico funciona de forma semelhante ao seguro saúde, mas voltado aos cuidados bucais do colaborador. Por isso, também traz coberturas que proporcionam qualidade de vida e são um diferencial na busca de talentos para a empresa.

+

Nessa modalidade, o colaborador costuma contar com realização de exames e consultas em rede credenciada, além de internações.

+

CLIQUE PARA COTAR SEGURO ODONTOLÓGICO

+

Por que fazer um seguro empresarial?

+

seguro empresarial

+

Embora as empresas possam contar com recursos como vigilância, câmeras, para-raios, alarmes e outros, o seguro é um produto que agrega nos quesitos segurança e tranquilidade. Por isso, é essencial que o empresário pense na proteção de sua companhia como um todo, principalmente no que diz respeito ao seu patrimônio e seus colaboradores.

+

Imagine a seguinte situação: em um dia muito chuvoso, um raio atinge a fiação de um restaurante, causa um incêndio e danifica não só a estrutura do estabelecimento como os aparelhos, como TV e computador do caixa que ali estavam. Se o proprietário tiver o seguro empresarial contratado, as coberturas de patrimonial vão garantir a indenização das perdas e ele não terá que arcar com todos os prejuízos.

+

Agora pense em outra situação na qual uma empresa de tecnologia é invadida por criminosos, que levam notebooks, tablets e outros gadgets. Se o dono tiver contratado o seguro empresarial com cobertura para roubo e furto, será ressarcido pelos prejuízos de acordo com que consta em sua apólice e poderá renovar a quantidade de equipamentos que foram subtraídos.

+

Ficou com alguma dúvida sobre a importância do seguro para empresas, como ele funciona e quais são as suas principais coberturas? É só falar com a gente. Mande sua dúvida ou sugestão por meio das perguntas abaixo!

+

CLIQUE PARA COTAR SEGURO EMPRESARIAL

+

O post Seguro Empresarial: como funciona e o que cobre? apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/seguro-empresarial-como-funciona-e-o-que-cobre/feed/ + 0 +
+ + Seguro para carros elétricos: como funciona essa proteção? + https://www.minutoseguros.com.br/blog/seguro-para-carros-eletricos/ + https://www.minutoseguros.com.br/blog/seguro-para-carros-eletricos/#respond + Thu, 27 Feb 2020 14:56:12 +0000 + + + + + + + + + http://www.minutoseguros.com.br/blog/?p=27400 + Por se tratar de automóveis com uma construção diferente em algumas partes da mecânica, surge a dúvida: como funciona o seguro para carros elétricos? Existem coberturas especiais? O preço é diferenciado? É o que explicaremos neste texto.

+

O post Seguro para carros elétricos: como funciona essa proteção? apareceu primeiro em Blog Minuto Seguros.

]]>
+ Relativamente novo no Brasil, o mercado dos veículos movidos a eletricidade tem ganhado cada vez mais relevância. Afinal, é uma tendência mundial a maior utilização de energias renováveis também como combustível. Por se tratar de automóveis com uma construção diferente em algumas partes da mecânica, surge a dúvida: como funciona o seguro para carros elétricos? É o que explicaremos na sequência do texto.

+

seguro para carros elétricos

+

Importância do seguro auto

+

Antes de falar sobre o segmento de seguro para carros elétricos, é preciso ressaltar a importância do seguro auto no dia a dia. Afinal, trata-se de um produto pensado exclusivamente para a sua proteção e tranquilidade.

+

Entre as várias possibilidades de coberturas que o seguro oferece estão a de roubo e furto, incêndio, danos a terceiros, assistência 24 horas, danos causados pela natureza e muito mais. É um universo repleto de possibilidades para garantir a sua tranquilidade e não deixá-lo sair no prejuízo.

+

Portanto, entre em contato com a Minuto Seguros, a maior corretora online do Brasil, e faça sua cotação! Trabalhamos com mais de 10 seguradoras que estão entre as principais do País. Dessa forma, garantimos que você receba uma proposta adequada ao seu perfil e às suas necessidades.

+

Para cotar, basta preencher o formulário clicando no botão abaixo. Se preferir, ligue para 0800 773 3000 e fale diretamente com um consultor.

+

COTE SEGURO AUTO GRÁTIS

+

Seguro para carros elétricos: existe diferença para os movidos a combustão?

+

seguro para carros elétricos, pintura

+

Como dissemos anteriormente, esse tipo de veículo ainda é novo no País. Os primeiros modelos 100% movidos a eletricidade começaram a chegar por aqui recentemente e com preços elevados em comparação a veículos populares. Portanto, não são muitas as unidades nas ruas para que se tenha certeza de uma clara diferença entre seguros para carros elétricos e à combustão.

+

Preço do seguro para carros elétricos é mais barato?

+

Não há ainda um grande volume de carros elétricos nas ruas para que se tenha um registro considerável do número de sinistros, como roubo e furto. Mas, com relação à manutenção, por exemplo, percebe-se que o risco de problemas deste tipo de veículo é consideravelmente menor do que de automóveis a combustão.

+

Isso acontece porque os motores elétricos possuem cerca de 50 partes móveis contra 350, em média, de um semelhante a combustão. O menor risco de ter manutenção é um fator que interfere no preço do seguro.

+

Dessa forma, mesmo que peças para carros elétricos e oficinas especializadas sejam mais difíceis de encontrar, o que se vê inicialmente são valores, em geral, mais baixos em relação a automóveis de mesma faixa de preço.

+

Para exemplificar, fizemos um levantamento do preço médio do seguro comparando três modelos de veículos em faixa semelhante de preços: O Nissan Leaf, elétrico, Volkswagen Golf, híbrido, e o Mercedes Classe A250, a gasolina. O perfil usado para as cotações foi de um homem, casado, com 35 anos, residente do centro da cidade de São Paulo.

+

Preço do seguro para carro elétrico X outros modelos

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MarcaModeloTipo de motorValor na FIPEPreço do SeguroValor do seguro x Valor do Veículo
NISSANLEAFElétricoR$ 195.000R$ 7.129,723,60%
VOLKSWAGENGOLFHíbridoR$ 199.990R$ 6.176,483,10%
MERCEDES-BENZCLASSE A250CombustãoR$ 207.357R$ 8.064,233,90%
+

Neste cenário, os dois modelos que não são 100% a combustão ficaram com preço médio do seguro menor do que o carro que não possui nenhum motor movido a eletricidade.

+

Existem coberturas especiais para carros elétricos?

+

Com o crescimento no mercado de veículos elétricos e híbridos no Brasil, algumas seguradoras começam a oferecer produtos especiais para essa categoria.

+

Entre os diferenciais disponíveis no seguro para carros elétricos estão assistência 24 horas equipada com carregador de bateria, preparada para atender esse tipo de automóvel. Além disso, em alguns casos, existe a possibilidade de incluir uma cobertura adicional para os cabos de carregamento.

+

Já há seguradoras que lançaram até coberturas de seguro residencial para a proteção de carregadores de carros elétricos em casas e prédios. Ou seja, cada vez mais os proprietários de automóveis elétricos ganham opções para garantir a segurança do seu bem.

+

Quais carros elétricos estão disponíveis no Brasil?

+

Antes de 2019, nenhum carro elétrico havia sido lançado no Brasil. Contudo, desde então, alguns modelos já estão disponíveis para quem deseja um automóvel dessa categoria. Confira os principais:

+

Nissan Leaf

+

Nissan leaf

+

Carro elétrico mais vendido no mundo, o Nissan Leaf chegou ao Brasil em meados de 2019 com status de referência na categoria. Em dezembro do último ano, o modelo foi premiado como o Carro Verde do Ano, que reconhece o veículo que mais está comprometido com o meio ambiente.

+

Um dos automóveis usados em nosso comparativo do preço do seguro para carros elétricos, o Leaf possui autonomia entre 241 km e 389 km com a bateria cheia. Afinal, tudo depende de como estão as condições de trânsito e da forma de dirigir do condutor. Ele ainda possui o modo Eco, que pode ser acionado em casos de emergência para diminuir o consumo de energia.

+

Preço: R$ 195.000

+

COTE SEGURO AUTO PARA O NISSAN LEAF

+

Renault Zoe

+

Renault Zoe

+

Automóvel movido a eletricidade com um dos menores preços no Brasil, o Renault Zoe tem a proposta de ser um modelo de entrada por aqui. Apesar de ainda assim ser caro para os padrões populares no País, seu acabamento é simples, com painel de plástico e bancos de tecido.

+

Com velocidade máxima de 135 km/h, a autonomia do Zoe chega a uma média de 300 km. Ou seja, tranquilo para quem costuma circular dentro da cidade, mas ponto de atenção aos que percorrem longas distâncias em estradas.

+

Preço: R$ 149.990

+

COTE SEGURO PARA CARROS DA RENAULT

+

JAC iEV 40

+

jac iev 40, seguro para carros elétricos

+

Quem está apostando alto no mercado de elétricos no Brasil é a JAC. A marca chinesa lançou nada menos do que cinco modelos no segundo semestre de 2019 e busca ser a mais poderosa no segmento. Dona do carro movido à eletricidade mais barato do Brasil (JAC iEV 20 – R$ 124.633), lançou também o JAC iEV 40, o SUV compacto que está na mesma faixa de preço do Zoe.

+

Utilizando o modo o Eco, o carro da montadora chinesa alcança até 350 km de autonomia e atinge velocidade máxima de 140 km/h.

+

Preço: R$ 159.000

+

COTE SEGURO PARA CARROS DA JAC

+

Ficou com alguma dúvida sobre como funciona o seguro para carros elétricos? Mande pra gente por meio dos comentários abaixo!

+

 

+

O post Seguro para carros elétricos: como funciona essa proteção? apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/seguro-para-carros-eletricos/feed/ + 0 +
+ + Coberturas do seguro patrimonial: veja as principais proteções do produto + https://www.minutoseguros.com.br/blog/coberturas-do-seguro-patrimonial/ + https://www.minutoseguros.com.br/blog/coberturas-do-seguro-patrimonial/#respond + Thu, 27 Feb 2020 14:42:39 +0000 + + + + + + http://www.minutoseguros.com.br/blog/?p=27374 + Embora muitas empresas já possuam recursos para segurança, como cercas elétricas, vigilância e câmeras, contratar o seguro patrimonial é essencial. Este produto oferece proteção contra roubo e furto, incêndios, responsabilidade civil e mais.

+

O post Coberturas do seguro patrimonial: veja as principais proteções do produto apareceu primeiro em Blog Minuto Seguros.

]]>
+ O seguro patrimonial é uma modalidade que tem como objetivo proteger e resguardar empresas de diversos riscos que podem prejudicá-las. Embora seja um produto pouco conhecido, atualmente o mercado oferece muitas coberturas do seguro patrimonial para serem selecionadas pelo proprietário. Veja mais sobre o assunto!

+

coberturas do seguro patrimonial

+

Como dissemos anteriormente, existem diversas coberturas do seguro patrimonial para escolha do proprietário do comércio, indústria, fábrica e outros segmentos. Basta selecionar quais são as ideais de acordo com as necessidades de seu empreendimento.

+

Importância do seguro patrimonial

+

Ao longo do texto iremos explicar como funcionam as principais coberturas do seguro para empresas. Assim, você poderá entender a importância em ter este produto para o seu negócio, já que ele poderá ser útil em diversas ocorrências, garantindo a tranquilidade no ambiente de trabalho.

+

E o que acha de cotar o seguro para sua empresa agora mesmo? Nós da Minuto Seguros, somos a maior corretora online do país e trabalhamos com as principais seguradoras do mercado para oferecer o plano ideal para o seu perfil.

+

Basta preencher o formulário de cotação clicando no botão abaixo ou, se preferir, ligar grátis para 0800 773 3000 e falar diretamente com um consultor.

+

COTE SEGURO PATRIMONIAL

+

As 5 principais coberturas do seguro patrimonial

+

Cobertura contra incêndio

+

coberturas do seguro patrimonial - Cobertura contra incêndio

+

Em primeiro lugar das coberturas do seguro patrimonial, vamos falar sobre a proteção contra incêndio. Inclusive, essa é uma das opções mais contratadas por conta do grande risco do qual ela protege. Esta cobertura serve para oferecer assistência à empresa caso ela sofra qualquer problema que esteja relacionado a um incêndio.

+

Existem alguns casos em que a apólice também cobre os prejuízos de incêndios externos. Ou seja, aqueles que se iniciam em prédios vizinhos e terminam causando problemas em seu patrimônio.

+

Proteção contra roubo e furto

+

Coberturas do seguro patrimonial - Proteção contra roubo e furto

+

Assim como em qualquer outra modalidade do seguro, a proteção contra roubo e furto também está presente nas coberturas do seguro patrimonial. Afinal, essa é a principal forma para o empresário proteger seu patrimônio contra este risco.

+

Embora muitos empreendimentos possuam grande investimento em sistemas avançados de segurança, como câmeras, alarmes, cercas elétricas e vigilância constante, é comum que as empresas se deparem com seguidos problemas de roubo e furto.

+

Portanto, recomenda-se contratar esta cobertura para que ela alinhe-se com os recursos de segurança já existentes e evite ao máximo os prejuízos.

+

Cobertura contra acidentes naturais

+

coberturas do seguro patrimonial -

+

Este seguro é indicado para aquelas empresas que estão localizadas em lugares onde o risco de desastres naturais é maior. Ou seja, grande probabilidade de sofrer prejuízos por tempestades, chuvas de granizo, deslizamentos de terra e inundações, por exemplo.

+

Em um país onde é comum, principalmente no verão, ocorrer uma série de enchentes e deslizamentos, é importante dar atenção a esta cobertura. Até outros casos como furacões e tornados, que não fazem parte do cotidiano, podem acontecer, como em algumas localidades no Sul do país.

+

Não é difícil encontrar negócios que fecham as portas temporariamente ou permanentemente por causa de eventos naturais. Além disso gerar prejuízos pelos danos sofridos na empresa, ainda complica mais a situação pelo tempo que a produção ficará interrompida, agravando o caso.

+

Seguro para pagamento de aluguéis

+

Seguro para pagamento de aluguéis

+

Boa parte dos empreendimentos ocupa um espaço que não é de sua propriedade, apenas alugam para manter sua operação. Portanto, esta cobertura servirá para que os valores de aluguel, despesas de condomínio e outros custos que tenham relação com o imóvel sejam arcados em uma crise.

+

Ou seja, essa cobertura contribui para casos cujo espaço da empresa encontra-se em fase de reconstrução ou reparo por conta de algum sinistro, por exemplo. Além disso, serve para cobrir o aluguel por causas naturais, como inundações, vendavais, queda de raio e outros.

+

Vale lembrar que esta cobertura está atrelada a uma contratação opcional. Portanto, o dono da empresa deverá solicitar ao corretor para que ela faça parte da apólice.

+

Cobertura de responsabilidade civil

+

coberturas do seguro patrimonial - Cobertura de responsabilidade civil

+

Por fim, como última das coberturas do seguro patrimonial, mas não menos importante, podemos mencionar a responsabilidade civil. Esta é relevante principalmente para a segurança jurídica da empresa.

+

Seu objetivo é oferecer proteção ao segurado quanto a possíveis ações judiciais, reclamações ou qualquer dano que seja causado a terceiros e seus bens.

+

Por sua vez, estes terceiros podem ser funcionários, fornecedores, clientes ou prestadores de serviço. A cobertura vai proteger de forma civil a empresa por ter causado danos involuntários a este terceiro.

+

Pronto, agora você já sabe como funcionam as coberturas do seguro patrimonial. Basta analisar as particularidades e necessidades de seu empreendimento para selecionar quais proteções são ideais para você.

+

Se houver dúvidas ou sugestões, deixe nos comentários abaixo!

+

O post Coberturas do seguro patrimonial: veja as principais proteções do produto apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/coberturas-do-seguro-patrimonial/feed/ + 0 +
+ + Luz de freio não acende: como consertar? + https://www.minutoseguros.com.br/blog/luz-de-freio-nao-acende/ + https://www.minutoseguros.com.br/blog/luz-de-freio-nao-acende/#respond + Fri, 21 Feb 2020 18:06:05 +0000 + + + + + + + + + + + + http://www.minutoseguros.com.br/blog/?p=27310 + Se a luz de freio não acender, isto é um problema que necessita de atenção e prioridade do proprietário do veiculo. O defeito pode ser por mau funcionamento do fusível ou interruptores e até por conta da lâmpada estar queimada.

+

O post Luz de freio não acende: como consertar? apareceu primeiro em Blog Minuto Seguros.

]]>
+ +

A luz de freio, assim como outras lanternas que o veículo possui, serve para sinalizar uma ação do carro aos outros motoristas na via. Neste caso, que ele está freando. Mas, como qualquer outra parte da mecânica ou da carroceria, ela está sujeita a defeitos. Então, se a luz de freio não acende ao pisar no pedal, o que deve ser feito?

+ +

luz de freio não acende

+

Se a luz de freio não acender, isto é um problema que necessita de atenção e prioridade do proprietário do automóvel. Afinal, este defeito pode acabar resultando em uma colisão traseira, pois outros carros que estão na rua e vêm atrás podem não notar a frenagem.

+
+

Mas, além do fator de segurança, ainda existem outras complicações por andar com a luz de freio irregular. Isto é passível de multa caso seja flagrado por alguma autoridade do trânsito e o motorista deverá arcar com uma infração média no valor de R$ 130,16 e 4 pontos na Carteira Nacional de Habilitação (CNH).

+

Contratação de seguro auto

+

Muitos motoristas sabem que no trânsito a segurança vem em primeiro lugar. Para isso, além de manter todas as lanternas funcionando normalmente, contratar o seguro também é essencial.

+

O seguro auto é o principal produto para garantir a tranquilidade dos proprietários em casos de sinistros que não podemos prever quando acontecerão, como roubo e furto ou colisão com terceiros.

+

Para fazer uma cotação, conte conosco da Minuto Seguros. Afinal, somos a maior corretora online de seguros do País e trabalhamos com mais de 10 seguradoras do mercado para oferecer o plano ideal para o seu perfil. Basta preencher o formulário clicando no botão abaixo ou, se preferir, ligue grátis para 0800 773 3000 e fale diretamente com um consultor.

+

COTE SEGURO AUTO GRÁTIS

+

O que é e como funciona a luz de freio?

+

Componentes

+

Em primeiro lugar, antes de explicar porque a luz de freio não acende, vamos listar os seus componentes:

+
    +
  • – Um fusível;
  • +
  • – Um interruptor de luz de freio (cebolinha);
  • +
  • – Duas lâmpadas de 21 watts;
  • +
  • – A fiação que faz as ligações elétricas.
  • +
+

Na falta ou defeito de qualquer um dos componentes, o funcionamento já pode ser comprometido.

+

Funcionamento

+

O funcionamento da luz de freio é bem simples e prático: ao pisar no pedal do freio, o interruptor é acionado, levando energia para o circuito e, assim, às lanternas.

+

Vale lembrar novamente que, quando a luz de freio não acende, há um grande risco à segurança dos ocupantes do automóvel e de outros veículos.

+

Afinal, este é o único recurso disponível para sinalizar aos outros motoristas que você está freando. A luz acende em uma fração de segundo até mesmo antes do motorista pisar totalmente no pedal, permitindo que a pessoa de trás perceba e possa frear a tempo.

+
+

Luz de freio não acende: possíveis problemas

+

Problemas nos fusíveis ou nos interruptores

+

luz de freio não acende - Problemas nos fusíveis ou nos interruptores

+

Fusíveis ou interruptores com defeitos podem ser os principais motivos para a luz de freio não acender. Na maioria dos automóveis, esta parte fica localizada junto ao pedal de freio, onde está conectada a dois fios que serão utilizados para testar se o problema vem de lá.

+

Ao identificar este item em seu automóvel, busque pela peça conhecida como cebolinha. Geralmente ela fica bem próxima ao pedal e, na maioria das vezes, localizada um pouco acima.

+

Agora, para fazer o teste e saber se a luz de freio não acende por conta desta peça:

+
    +
  1. Desconecte os dois fios da cebolinha e ligue um ao outro – porém lembrando de estar com um pedaço pequeno de fio descascado nas duas pontas, de modo que seja possível o teste.
  2. +
  3. Feito isso, gire a chave na ignição apenas para acender o painel e confira se todas as lâmpadas acendem ou não.
  4. +
+

Dessa maneira, caso as lâmpadas funcionem normalmente, conclui-se que a cebolinha está queimada. No entanto, se ainda assim a luz de freio não acender, será necessário verificar o fusível. Neste caso, o ideal é consultar as instruções presentes no manual do proprietário, pois as informações são específicas de cada modelo.

+

A lâmpada pode estar queimada

+

A lâmpada pode estar queimada

+

Caso o problema ainda não tenha sido encontrado com as orientações anteriores, é possível que a luz de freio não acenda por conta de lâmpadas queimadas.

+

Trocar a lâmpada, inclusive, é bem simples. O processo pode ser feito inteiramente sem sair de casa, porém, se preferir, basta lavar o carro a um mecânico.

+

O preço da lâmpada pode variar até R$ 40. Lembrando também que o valor dependerá do modelo da lâmpada e do veículo.

+

Outras possíveis causas

+

Por fim, se ainda depois de todas as verificações anteriores o problema da luz não acender ao frear permanecer, a melhor alternativa é levar o carro num especialista em elétrica automotiva.

+

Indicamos levar a um especialista pelo fato do problema ser bem mais específico do que simplesmente trocar a lâmpada ou ajustar a cebolinha que está queimada.

+

Quando a luz de freio não acende e você tentou os procedimentos acima, há mais complicações a serem resolvidas. Isso pode envolver, por exemplo, o chicote e outras partes do circuito ou até mesmo o computador de bordo.

+

Pronto, agora você já sabe quais são os problemas que podem causar a complicação da luz de freio não acender. Se houver dúvidas ou sugestões, deixe nos comentários abaixo!

+

O post Luz de freio não acende: como consertar? apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/luz-de-freio-nao-acende/feed/ + 0 +
+ + O valor do seguro dos carros mais vendidos do Brasil em janeiro + https://www.minutoseguros.com.br/blog/o-valor-do-seguro-dos-carros-mais-vendidos-do-brasil-em-janeiro/ + https://www.minutoseguros.com.br/blog/o-valor-do-seguro-dos-carros-mais-vendidos-do-brasil-em-janeiro/#respond + Thu, 20 Feb 2020 10:14:19 +0000 + + + + + + + + + + https://www.minutoseguros.com.br/blog/?p=17370 + De acordo com nosso estudo, sete dos 10 veículos da lista tiveram redução do preço médio do seguro em relação ao mês de dezembro de 2019. Segundo o levantamento, o KA é o mais barato para as mulheres e o Mobi para os homens.

+

O post O valor do seguro dos carros mais vendidos do Brasil em janeiro apareceu primeiro em Blog Minuto Seguros.

]]>
+ A Minuto Seguros, uma das principais corretoras do País e líder no segmento de seguros online, acaba de realizar um estudo com base na lista divulgada pela Fenabrave (Federação Nacional da Distribuição de Veículos Automotores) com os carros mais vendidos do Brasil em janeiro.

+

mais vendidos do Brasil, onix

+

O Onix, da Chevrolet, abriu o ano na liderança do ranking dos carros mais vendidos do Brasil em Janeiro, com 17.463 unidades comercializadas. Com relação ao preço médio do seguro, o hatch apresentou uma queda significativa em relação ao mês anterior, tanto para os homens quanto para as mulheres.

+

Para o público masculino, o valor médio entre as capitais cotadas em janeiro ficou em R$ 2.020, enquanto em dezembro, o preço médio foi de R$ 2.221, uma redução de 9%. Já para o público feminino, a queda foi ainda mais acentuada, já que no primeiro mês de 2020, o valor médio do seguro foi 17% menor do que o registrado no mês anterior: R$ 1.543 contra R$ 1.873.

+

Onix Plus se consolida na vice-liderança dos mais vendidos do Brasil

+

Outro automóvel da família Chevrolet, o Onix Plus iniciou o ano com força no mercado e parece, aos poucos, consolidar-se como o novo dono da segunda colocação entre os veículos mais vendidos do País. Em janeiro, o novo sedã registrou 8.722 vendas, quase 1.300 a mais do que o KA, terceiro colocado.

+

No que diz respeito ao preço do seguro do Onix Plus , o modelo apresentou alta em relação ao calculado na sua primeira aparição no Top 10, em outubro de 2019. À época, o novo sedã havia registrado o valor médio de R$ 2.098 na cotação para o perfil masculino. Agora, o valor entre as capitais cotadas gira em torno dos R$ 2.769, elevação de 32%. Para as mulheres, a alta foi mais sutil. Em outubro do ano passado, o preço médio do seguro era de R$ 1.684, enquanto em janeiro deste ano, ficou em R$ 1.869, uma diferença de cerca de 11%.

+

Para os proprietários do Ford KA, o terceiro colocado entre os mais vendidos do Brasil, ótima notícia com relação aos preços do seguro. Houve redução nas cotações médias tanto para homens quanto para mulheres. Em janeiro de 2020, o valor médio do seguro do KA para o público masculino ficou em R$ 2.084, cerca de 10% mais barato do que os R$ 2.290 levantados em dezembro de 2019. Em reais, a redução foi de R$ 206. A queda do preço médio para o público feminino foi ainda mais acentuada: 12,5%. Em janeiro, o preço foi de R$ 1.427, enquanto em dezembro, havia sido de R$ 1.630.

+

COTE SEGURO AUTO GRÁTIS

+

Renegade tem redução de R$ 1.061 no preço médio do seguro para homens; HB20 registra maior queda de valor para mulheres

+

+

Presente mais uma vez na lista dos carros mais vendidos do Brasil, o Renegade registrou a maior diferença, em reais, no preço médio do seguro em relação a dezembro. Para o público masculino, o valor do seguro em janeiro foi de R$ 3.440, mais de mil reais mais barato do que o registrado no último mês de 2019, quando chegou a R$ 4.501, uma redução de 23,5%. Quanto ao perfil feminino, também houve queda: 3,6%. No primeiro mês de 2020, o valor ficou em R$ 2.823 contra os R$ 2.930 da cotação média realizada em dezembro de 2019.

+

Já a maior queda no valor médio do seguro para o público feminino ficou com o HB20. Na cotação para as mulheres em janeiro, o preço ficou na casa dos R$ 1.587, quase R$ 500 a menos do que os R$ 2.052 registrados em dezembro, o que representou uma redução de mais de 22%. Para o os homens, também houve diminuição no valor: de R$ 2.481, em dezembro, para R$ 2.172, uma queda de 12,5%.

+

Preço do seguro do Kwid fica bem mais barato, enquanto valo do Gol se mantém estável

+

Consolidado na quarta colocação, o Kwid foi outro modelo a ter o preço médio do seguro reduzido em relação a dezembro. No último mês de 2019, o valor havia ficado em R$ 2.299 para os homens. Já em janeiro, o preço cotado foi de R$ 2.002, ou seja, 13% mais barato. Para o público feminino, também houve queda no valor médio do seguro para o veículo da Renault: de R$ 1.669, em dezembro, para 1.610, em janeiro, uma diferença de 3,5%.

+

Já o Gol, sexto colocado entre os carros mais vendidos do Brasil, não apresentou grande variação no valor do seguro em relação ao último mês de 2019. Para o público masculino, o preço se manteve estável, com variação de cinco reais dos R$ 2.694 de janeiro para os R$ 2.699 cotados em dezembro. Para as mulheres, o primeiro mês do ano registrou uma leve elevação, com R$ 2.140 ante os R$ 2.064 do mês derradeiro do ano passado.

+

Polo e Argo também tem queda no preço médio do seguro

+

Na sétima posição, o Novo Polo, outro modelo da Volkswagen a entrar na lista, foi outro veículo a ter o preço médio do seguro mais barato em relação a dezembro, tanto para as mulheres quanto para os homens. Para elas, a queda nos valores foi de 11,6%: R$ 1.786, em janeiro, contra R$ 2.020, em dezembro. Já o público masculino paga, em média, 2.425 no seguro do Polo em janeiro, 3,5% a menos do que no último mês de 2019.

+

Único representante da Fiat no Top 10, o Argo foi mais um modelo a ter o valor médio do seguro com redução no mês de janeiro. Em janeiro, o preço para as mulheres ficou em R$ 1.929, quando em dezembro havia sido de R$ 2.058, ou seja, 6,3% mais barato. Para o público masculino, a queda foi de 4,5%: R$ 2.318 em janeiro contra R$ 2.427 de dezembro.

+

Análise do preço do seguro dos carros mais vendidos do Brasil

+

mais vendidos do Brasil, mobi

+

O preço médio do seguro de todos os 10 veículos da lista entre as capitais cotadas foi de R$ 2.383 para os homens e de R$ 1.820 para as mulheres.

+

Já o valor médio do seguro mais barato para o público masculino, em janeiro, ficou com o Fiat Mobi. No levantamento realizado, os homens pagam R$ 1.901. Enquanto isso, o posto de valor médio do seguro mais alto ficou com o Renegade: R$ 3.440. Para as mulheres, o menor preço médio do seguro registrado em janeiro foi o do Ford KA: R$ 1.470. O mais caro foi, assim como para o público masculino, o Renegade: R$ 2.823.

+

Para realizar o estudo, a Minuto Seguros considerou como perfil um condutor homem e uma condutora mulher, de 35 anos, ambos casados. Foram avaliados os preços dos seguros em cinco capitais: São Paulo (SP), Rio de Janeiro (RJ), Goiânia (GO), Recife (PE) e Florianópolis (SC).

+

Quem paga menos pelo seguro?

+

Entre os homens

+

Dentro destes perfis mencionados, o preço do seguro para o Onix Plus é o que apresenta a menor diferença entre as capitais cotadas para homens. O valor mais alto está no Rio de Janeiro, com R$ 3.030, e o menor em Recife, por R$ 2.402, uma distância de R$ 628. No contraponto de diferença de valores, ainda citando o público masculino, o Renegade é o que possui a maior diferença entre estados: R$ 2.241. A mais alta também no Rio de Janeiro, R$ 4.988, e a menor em Florianópolis, com R$ 2.746.

+

Para os homens, Florianópolis é a cidade com seguro mais barato: oito dos dez carros. Nos seguros com valores mais altos, o Rio de Janeiro é a cidade que detém os maiores preços: todos os dez modelos. A capital de Santa Catarina registrou, também, o menor preço entre todos os modelos cotados no perfil masculino: R$ 1.458 para o Onix. O preço médio do seguro para homens, em São Paulo, para os 10 carros mais vendidos é de R$ 2.415, já no Rio de Janeiro, o valor é de R$ 2.906.

+

Entre as mulheres

+

Agora, falando no perfil feminino, o Novo Polo é o que apresenta a menor diferença entre as capitais cotadas, com uma diferença de R$ 552, do valor mais alto, que está no Rio de Janeiro, com R$ 2.031, para o mais baixo, que está em Florianópolis, com R$ 1.575. Em outra comparação, o Renegade ficou com a maior distância de valores: R$ 2.854. A maior no Rio, com R$ 4.812 e a menor, em Florianópolis, com R$ 1.953.

+

No âmbito do público feminino, Florianópolis também é a cidade com o seguro mais barato: todos os dez carros. Já os valores maiores estão concentrados no Rio de Janeiro: 100% dos seguros com maior preço ficam na capital carioca. O menor valor entre todos os modelos e capitais cotados no perfil feminino ficou com Florianópolis: R$ 956 para o KA. O preço médio do seguro em São Paulo, para as mulheres, ficou em R$ 1.651 e no Rio de Janeiro, R$ 2.577.

+

Tabelas com os valores do seguro

+

Público feminino

+

+

Público masculino

+

+

 

+

O post O valor do seguro dos carros mais vendidos do Brasil em janeiro apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/o-valor-do-seguro-dos-carros-mais-vendidos-do-brasil-em-janeiro/feed/ + 0 +
+ + Seguro residencial cobre desmoronamento? Veja detalhes da cobertura + https://www.minutoseguros.com.br/blog/seguro-residencial-cobre-desmoronamento/ + https://www.minutoseguros.com.br/blog/seguro-residencial-cobre-desmoronamento/#respond + Wed, 19 Feb 2020 21:07:15 +0000 + + + + + + + + + + + + http://www.minutoseguros.com.br/blog/?p=27285 + Para o seguro residencial cobrir sinistros de desmoronamento, é necessário que o proprietário adquira uma cobertura extra. A indenização pode ser parcial ou integral dependendo de quais foram os prejuízos sofridos durante o ocorrido.

+

O post Seguro residencial cobre desmoronamento? Veja detalhes da cobertura apareceu primeiro em Blog Minuto Seguros.

]]>
+ O seguro residencial é o produto que melhor protege o proprietário de uma casa. Existem coberturas contra os mais diversos riscos que não são possíveis prever quando acontecerão, como: roubo e furto, queda de raio, queda de árvore, enchentes etc. Mas uma dúvida de grande parte dos proprietários é se o seguro residencial cobre desmoronamento. Veja detalhes sobre o assunto ao longo do texto!

+

seguro residencial cobre desmoronamento

+

Em casos de desmoronamento, na maioria das vezes, o prejuízo ao proprietário é enorme. Afinal, quando paredes e telhado caem, por exemplo, as chances de outras partes da residência serem atingidas aumenta.

+

Imagine uma situação: está ocorrendo uma reforma em uma parede na sala de estar. Ela acaba caindo e causando estrago em objetos como a televisão, mesa e aparelho de som. Além do prejuízo com a estrutura da residência, ainda há os gastos com os aparelhos danificados.

+

Contratação do seguro residencial

+

Portanto, fazer a contratação de um seguro residencial é uma escolha inteligente que pode fazer o dono da casa economizar muito em ocasiões diversas. Seja por conta de desmoronamento ou qualquer outro tipo de sinistro, estar preparado e com o seguro contratado é essencial.

+

Por isso, faça uma cotação conosco da Minuto Seguros. Afinal, somos a maior corretora online do país e trabalhamos com as principais seguradoras do mercado.

+

Para cotar, basta preencher o formulário em nosso site ou, se preferir, ligue grátis para 0800 773 3000 e fale diretamente com um consultor.

+

COTE SEGURO RESIDENCIAL

+

Entenda o seguro residencial

+

seguro residencial cobre desmoronamento

+

Antes de explicarmos detalhadamente se o seguro para casa cobre desmoronamento, é indicado falar deste produto e como ele funciona de forma geral.

+

O seguro residencial proporciona a proteção tanto da estrutura da casa quanto dos bens no interior dela. Dessa forma, de acordo com as coberturas contratadas na apólice, em casos de sinistros haverá o pagamento da indenização pela seguradora. Assim, o dono pode ficar tranquilo sabendo que as perdas serão ressarcidas.

+

Na hora de fechar o seguro, o proprietário pode personalizar as proteções e limites de indenização conforme sua necessidade. Porém, invariavelmente, isto influenciará no preço final do seguro. Por isso, é importante entender os dois grupos de coberturas: básica e adicionais.

+

Coberturas básicas

+

As coberturas básicas são proteções que devem, obrigatoriamente, estar inclusas nas apólices comercializadas pelas seguradoras. Isso significa que em qualquer tipo de seguro contratado elas devem estar presentes. São elas: riscos originados por incêndio, queda de raio e explosão.

+

Coberturas adicionais

+

Já as coberturas adicionais são inclusas de forma extra na apólice somente de acordo com a vontade do proprietário. Elas proporcionam uma maior proteção para a residência, porém influenciam no valor final do prêmio.

+

Entre todas essas coberturas extras, as principais que podemos mencionar são: contra furto e roubo, vazamento de tubulações, responsabilidade civil familiar, escritório em residência, vendaval, recomposição de documentos e impacto de veículos.

+

Afinal, seguro residencial cobre desmoronamento?

+

Seguro residencial cobre desmoronamento?

+

Agora, falando mais especificamente sobre a questão do seguro residencial cobrir desmoronamento, devemos deixar claro que isso dependerá da contratação que o dono do imóvel fizer.

+

Como já mostramos anteriormente, o plano com as coberturas básicas desta categoria do seguro não possui a proteção contra desmoronamento inclusa. No entanto, o proprietário poderá adicioná-la caso seja de sua vontade.

+

Ao solicitar para o corretor a cobertura contra desmoronamento de forma extra, a casa ficará protegida contra este risco que pode causar prejuízos por danos materiais que ocorrem de maneira súbita, acidental e imprevista à residência.

+

Como funciona a cobertura?

+

seguro residencial cobre desmoronamento - Como funciona a cobertura?

+

Com esta cobertura contratada, o seguro residencial cobre desmoronamento parcial ou total, reconstrução por ameaça de mais um desmoronamento ou demolição e ainda despesas por manutenções para prevenir novos prejuízos.

+

Para exemplificar, suponha que o proprietário contratou uma cobertura de indenização em R$ 30 mil. Durante a vigência do contrato em questão, uma parede e o muro da casa caíram sem qualquer explicação. Neste caso específico, é caracterizado um desmoronamento parcial e a companhia deve indenizar em até R$30 mil para reforma e reconstrução.

+

Como solicitar indenização do seguro residencial?

+

seguro residencial cobre desmoronamento - Como solicitar indenização do seguro residencial?

+

Para abrir o processo do sinistro e receber a indenização, é necessário que o titular do seguro entre em contato com a sua seguradora ou corretora. Dessa forma, todos os dados necessários devem ser informados, como data e horário do ocorrido, as circunstâncias do sinistro e a ocorrência.

+

Tudo isso deve e pode ser passado para a seguradora por telefone ou por e-mail. Além disso, alguns outros documentos devem ser enviados para análise do pedido feito pelo segurado. O que as seguradoras costumam pedir são:

+
    +
  • – Especificação de tudo o que foi destruído, todos os prejuízos sofridos no desmoronamento;
  • +
  • – Nota fiscal ou fatura de tudo que foi recomposto após o acidente;
  • +
  • – Orçamento para os reparos e substituição do que foi perdido;
  • +
  • – Comprovação de equipamento danificado ou de propriedade.
  • +
+

Vale lembrar que este último item também é conhecido como inventário do seguro. Ele é feito logo após a aquisição do produto e garante que o segurado possui todos os itens que ele mencionou no sinistro. Isto ajuda no combate de fraudes nessa categoria de seguro.

+

Pronto, agora você já sabe se o seguro residencial cobre desmoronamento e todos os detalhes sobre essa cobertura. Caso tenha dúvidas ou sugestões, deixe nos comentários abaixo!

+

O post Seguro residencial cobre desmoronamento? Veja detalhes da cobertura apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/seguro-residencial-cobre-desmoronamento/feed/ + 0 +
+ + Indenização do seguro viagem: como solicitar o pagamento? + https://www.minutoseguros.com.br/blog/indenizacao-do-seguro-viagem/ + https://www.minutoseguros.com.br/blog/indenizacao-do-seguro-viagem/#respond + Tue, 18 Feb 2020 18:21:11 +0000 + + + + + + http://www.minutoseguros.com.br/blog/?p=27209 + Em casos de sinistro, a indenização do seguro viagem deve ser acionada pelo viajante. Mas, como funciona o processo até o pagamento? Afinal, são muitos pontos que envolvem documentos e comprovantes dos prejuízos sofridos.

+

O post Indenização do seguro viagem: como solicitar o pagamento? apareceu primeiro em Blog Minuto Seguros.

]]>
+ Ninguém gosta de passar por imprevistos indesejados, ainda mais quando eles acontecem durante uma viagem. Por isso, a contratação do seguro é importante para que todos os viajantes possam pensar somente na diversão e não preocupar-se com prejuízos. Entretanto, como trata-se de um produto delicado, sempre há dúvidas: como funciona a indenização do seguro viagem é um exemplo. Portanto, continue lendo para saber mais sobre o assunto.

+

indenização do seguro viagem

+

Não é novidade que o seguro é um produto com muitas particularidades. Por conta disso, é importante contar com a ajuda de um especialista da área para sanar as possíveis dúvidas. Estas questões podem ser relacionadas com coberturas, condições e, principalmente, à indenização do seguro viagem.

+

Afinal, como a companhia ajuda o segurado que está fora do país? E dentro do país? Como o turista faz a solicitação para seu corretor ou seguradora? É muito importante saber estes pontos antes de partir ao seu destino.

+

Contratação do seguro viagem

+

E é claro, se está pretendendo fazer uma “trip”, não esqueça de garantir a sua proteção com o seguro viagem. Este produto oferece cobertura contra extravio de bagagem ou necessidade de atendimento médico, por exemplo.

+

Assim o roteiro de viagem poderá ser cumprido sem maiores complicações, pois a seguradora estará cobrindo tudo o que está estipulado na apólice.

+

Para cotar, conte com nós da Minuto Seguros. Afinal, trabalhamos com as principais seguradoras do mercado para oferecer o plano ideal para o seu perfil. Basta preencher o formulário em nosso site clicando no botão abaixo ou, se preferir, ligar grátis para 0800 773 3000 e falar diretamente com um consultor.

+

CLIQUE PARA COTAR SEGURO VIAGEM

+

Continue lendo para saber detalhes sobre como solicitar a indenização do seguro viagem.

+

Certifique-se de todas as coberturas inclusas na apólice

+

Certifique-se de todas as coberturas inclusas na apólice

+

Primeiramente, por mais que seja óbvio, para que o viajante receba a indenização do seguro viagem é necessário que a cobertura que protege o segurado na eventual situação esteja presente na apólice.

+

Se o segurado necessitar de uma assistência jurídica por cometer alguma infração de trânsito, por exemplo, e esta cobertura não estiver contemplada, a seguradora não arcará com este custo.

+

Portanto, é essencial que o viajante entenda completamente as suas coberturas do seguro no momento da contratação com o corretor. Na Minuto Seguros, por exemplo, fazemos questão de explicar todas as proteções inclusas por meio de nosso atendimento qualificado.

+

Assim, o segurado saberá exatamente quais são suas coberturas e direitos em casos de sinistros. Dessa forma, poderá fazer a solicitação de indenização do seguro viagem sem maiores preocupações.

+

Qual o valor da indenização do seguro viagem?

+

Qual o valor da indenização do seguro viagem?

+

Além de saber quais serão as coberturas inclusas no pacote do seguro, também deve ser discutido na cotação quais serão os valores para indenização dependendo do sinistro.

+

Para exemplificar, imagine que o viajante tenha sua bagagem extraviada avaliada em R$10 mil, mas que o limite de sua cobertura seja de R$5 mil. Dessa forma, a seguradora fará o pagamento da indenização de acordo com o valor estipulado na apólice, mas o montante não irá repor todos os pertences perdidos.

+

O mesmo repete-se no caso de despesas médicas, hospitalares ou odontológicas. O máximo a ser pago pela seguradora será o que estiver previsto na apólice, mesmo que os custos de tratamentos, operações, medicações e afins sejam maiores.

+

Portanto, novamente reforçamos: converse com o corretor para entender quais são os valores de indenizações adequadas à sua viagem e necessidade.

+

Como solicitar a indenização do seguro viagem?

+

indenização do seguro viagem - Como solicitar a indenização do seguro viagem?

+

Para que haja agilidade de ambas as partes, as seguradoras recomendam que o sinistro seja informado o quanto antes. Dessa forma, poderão providenciar o pagamento de forma mais rápida para não prejudicar o segurado.

+

É essencial que o viajante guarde os comprovantes e documentos de todos os gastos com o sinistro. Alguns desses papéis são notas fiscais ou até mesmo passagens de embarque, por exemplo.

+

Certamente esse tipo de documentação será solicitada se houver pedido de indenização do seguro viagem. Entretanto, dependendo do motivo que levou à solicitação, existem algumas diferenças no envio dos papéis para a companhia.

+

Por conta disso, separamos alguns exemplos de coberturas e o que é necessário para dar entrada no sinistro de cada uma delas. Vale lembrar também que os documentos exigidos podem variar entre as companhias.

+

Despesas hospitalares, médicas e farmacêuticas

+
    +
  • – RG, CPF e comprovante de residência;
  • +
  • – Nota fiscal comprovando a compra do medicamento durante a viagem;
  • +
  • – Prescrição médica;
  • +
  • – Autorização para crédito em conta corrente.
  • +
+

Em caso de atraso ou extravio de bagagem

+
    +
  • – Cópias do CPF e RG autenticadas;
  • +
  • – Relatório de atraso expedido pela companhia responsável;
  • +
  • – Notas fiscais dos gastos na compra de produtos de higiene e de roupas;
  • +
  • – Etiquetas de bagagem original;
  • +
  • – Autorização para crédito em conta corrente.
  • +
+

Em caso de danos à mala

+
    +
  • – Cópias do CPF e RG autenticadas;
  • +
  • – Relatório emitido pela empresa responsável referente aos danos;
  • +
  • – Orçamento original de reparo ou nota fiscal original do reparo da mala danificada;
  • +
  • – Autorização para crédito em conta corrente.
  • +
+

Indenização do seguro viagem em caso de atraso de voo

+
    +
  • – RG, CPF e comprovante de residência do segurado;
  • +
  • – Cópia da passagem aérea e do cartão de embarque;
  • +
  • – Comprovantes das despesas com alimentação e hospedagem;
  • +
  • – Declaração de atraso emitido pela da companhia aérea;
  • +
  • – Autorização para crédito em conta corrente.
  • +
+

Prazo para pagamento da indenização do seguro viagem

+

+

Por fim, outro detalhe muito importante para o conhecimento do segurado é o prazo de pagamento da indenização do seguro viagem.

+

É estipulado por lei um prazo para que o reembolso seja feito em até de 30 dias após entrega dos documentos solicitados. Porém, dentro desse período, o tempo médio varia para cada seguradora.

+

Pronto, agora você já sabe tudo sobre a indenização no seguro viagem. Se houver dúvidas ou sugestões, deixe nos comentários abaixo!

+

O post Indenização do seguro viagem: como solicitar o pagamento? apareceu primeiro em Blog Minuto Seguros.

]]>
+ https://www.minutoseguros.com.br/blog/indenizacao-do-seguro-viagem/feed/ + 0 +
+
+
\ No newline at end of file diff --git a/README.md b/README.md index c9b7b73..f2ac3e6 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,7 @@ Culturalmente você terá um bom fit se: Se você tem interesse em fazer parte de uma equipe multidisciplinar e que adora criar software com qualidade, siga os seguintes passos: + Faça um fork desse projeto e faça um pull request com a resolução do seguinte problema: Você deverá criar um programa para obter automaticamente o conteúdo dos dez últimos tópicos publicados no blog da Minuto Seguros. Abaixo segue um link para auxiliá-lo nesse trabalho: diff --git a/packages/Antlr.3.5.0.2/Antlr.3.5.0.2.nupkg b/packages/Antlr.3.5.0.2/Antlr.3.5.0.2.nupkg new file mode 100644 index 0000000..6aa184a Binary files /dev/null and b/packages/Antlr.3.5.0.2/Antlr.3.5.0.2.nupkg differ diff --git a/packages/Antlr.3.5.0.2/lib/Antlr3.Runtime.dll b/packages/Antlr.3.5.0.2/lib/Antlr3.Runtime.dll new file mode 100644 index 0000000..b963933 Binary files /dev/null and b/packages/Antlr.3.5.0.2/lib/Antlr3.Runtime.dll differ diff --git a/packages/Antlr.3.5.0.2/lib/Antlr3.Runtime.pdb b/packages/Antlr.3.5.0.2/lib/Antlr3.Runtime.pdb new file mode 100644 index 0000000..4afaf35 Binary files /dev/null and b/packages/Antlr.3.5.0.2/lib/Antlr3.Runtime.pdb differ diff --git a/packages/AutoMapper.9.0.0/.signature.p7s b/packages/AutoMapper.9.0.0/.signature.p7s new file mode 100644 index 0000000..64f8402 Binary files /dev/null and b/packages/AutoMapper.9.0.0/.signature.p7s differ diff --git a/packages/AutoMapper.9.0.0/AutoMapper.9.0.0.nupkg b/packages/AutoMapper.9.0.0/AutoMapper.9.0.0.nupkg new file mode 100644 index 0000000..3bbb81c Binary files /dev/null and b/packages/AutoMapper.9.0.0/AutoMapper.9.0.0.nupkg differ diff --git a/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.dll b/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.dll new file mode 100644 index 0000000..79121bd Binary files /dev/null and b/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.dll differ diff --git a/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.pdb b/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.pdb new file mode 100644 index 0000000..a752d87 Binary files /dev/null and b/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.pdb differ diff --git a/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.xml b/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.xml new file mode 100644 index 0000000..21057bd --- /dev/null +++ b/packages/AutoMapper.9.0.0/lib/net461/AutoMapper.xml @@ -0,0 +1,1754 @@ + + + + AutoMapper + + + + + Add Action called against the IConfigurationProvider before it gets sealed + + + + + Add an action to be called when validating the configuration. + + the validation callback + + + + Allow the same map to exist in different profiles. + The default is to throw an exception, true means the maps are merged. + + + + + How many levels deep should AutoMapper try to inline the execution plan for child classes. + See the docs for details. + + + + + Auto map to this destination type from the specified source type. + Discovered during scanning assembly scanning for configuration when calling + + + + + If set to true, construct the destination object using the service locator. + + + + + For self-referential types, limit recurse depth. + + + + + If set to true, preserve object identity. Useful for circular references. + + + + + If set to true, disable constructor validation. + + + + + If set to true, include this configuration in all derived types' maps. + + + + + Skip normal member mapping and convert using a instantiated during mapping. + + + + + Ignore this member for configuration validation and skip during mapping. + + + Must be used in combination with + + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + Must be used in combination with + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + + Must be used in combination with + + + + + Substitute a custom value when the source member resolves as null + + + Must be used in combination with + + + + + Value to use if source value is null + + + + + Specify the source member to map from. Can only reference a member on the type + + + Must be used in combination with + + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + Must be used in combination with + + + + + Specify a value converter type to convert from the matching source member to the destination member + Use with to specify a separate source member to supply to the value converter + + + Must be used in combination with + + + + + type + + + + + Map destination member using a custom value resolver. + Use with to specify an type. + + + Must be used in combination with + + + + + or type + + + + + Contains profile-specific configuration + + + + + Source extension methods included for search + + + + + Specify which properties should be mapped. + By default only public properties are mapped. + + + + + Specify which fields should be mapped. + By default only public fields are mapped. + + + + + Specify which methods, of those that are eligible (public, parameterless, and non-static or extension methods), should be mapped. + By default all eligible methods are mapped. + + + + + Specify which constructors should be considered for the destination objects. + By default all constructors are considered. + + + + + Contains member configuration relating to source members + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Member maps with default values. Used in dynamic/dictionary scenarios when source/destination members do not exist. + + + + + Gets the feature of type . + + The type of the feature. + The feature or null if feature not exists. + + + + Add or update the feature. Existing feature of the same type will be replaced. + + The feature. + + + + Get all configured type maps created + + All configured type maps + + + + Find the for the configured source and destination type + + Configured source type + Configured destination type + Type map configuration + + + + Find the for the configured type pair + + Type pair + Type map configuration + + + + Find the for the configured source and destination type + + Source type + Destination type + Type map configuration + + + + Resolve the for the configured source and destination type, checking parent types + + Configured source type + Configured destination type + Type map configuration + + + + Resolve the for the configured type pair, checking parent types + + Type pair + Type map configuration + + + + Dry run all configured type maps and throw for each problem + + + + + Dry run single type map + + Type map to check + + + + Dry run all type maps in given profile + + Profile name of type maps to test + + + + Dry run all type maps in given profile + + Profile type + + + + Get all configured mappers + + List of mappers + + + + Gets the features collection. + + The feature colection. + + + + Find a matching object mapper. + + the types to match + the matching mapper or null + + + + Factory method to create formatters, resolvers and type converters + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Create a mapper instance based on this configuration. Mapper instances are lightweight and can be created as needed. + + The mapper instance + + + + Create a mapper instance with the specified service constructor to be used for resolvers and type converters. + + Service factory to create services + The mapper instance + + + + Compile all underlying mapping expressions to cached delegates. + Use if you want AutoMapper to compile all mappings up front instead of deferring expression compilation for each first map. + + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + the runtime type of the source object + the runtime type of the destination object + the execution plan + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + The source/destination map request + the execution plan + + + + Map constructor parameter from member expression + + Member type + Member expression + + + + Map constructor parameter from custom func that has access to + + Not used for LINQ projection (ProjectTo) + Custom func + + + + Ignore this member for validation and skip during mapping + + + + + Execute a mapping from the source object to a new destination object. + The source type is inferred from the source object. + + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to a new destination object. + + Source type to use, regardless of the runtime type + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Source type to use + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to the existing destination object. + + Source type to use + Destination type + Source object to map from + Destination object to map into + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to the existing destination object with supplied mapping options. + + Source type to use + Destination type + Source object to map from + Destination object to map into + Mapping options + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to a new destination object with explicit objects + + Source object to map from + Source type to use + Destination type to create + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with explicit objects and supplied mapping options. + + Source object to map from + Source type to use + Destination type to create + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to existing destination object with explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapped destination object, same instance as the object + + + + Execute a mapping from the source object to existing destination object with supplied mapping options and explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapping options + Mapped destination object, same instance as the object + + + + Configuration provider for performing maps + + + + + Factory method for creating runtime instances of converters, resolvers etc. + + + + + Project the input queryable. + + Projections are only calculated once and cached + Destination type + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Project the input queryable. + + Destination type to map to + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Add an existing profile + + Profile to add + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add profiles contained in an IEnumerable + + IEnumerable of Profile + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Supply a factory method callback for creating resolvers and type converters + + Factory method + + + + Create a named profile with the supplied configuration + + Profile name, must be unique + Profile configuration + + + + Get the features collection. + + + + + Object mappers + + + + + Advance Configuration + + + + + Custom mapping action + + Source type + Destination type + + + + Implementors can modify both the source and destination objects + + Source object + Destination object + Resolution context + + + + Mapping configuration options for non-generic maps + + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the names of child object properties to map to the destination + + + + + Create a type mapping from the destination to the source type, using the destination members as validation. + + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize individual members + + Name of the member + Callback for configuring member + Itself + + + + Mapping configuration options + + Source type + Destination type + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the child objects to map to the destination + + + + + Customize configuration for a path inside the destination object. + + Expression to the destination sub object + Callback for member options + Itself + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize configuration for individual member + + Expression to the top-level destination member. This must be a member on the TDestination type + Callback for member options + Itself + + + + Customize configuration for individual member. Used when the name isn't known at compile-time + + Destination member name + Callback for member options + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + Destination type to use + + + + Customize configuration for an individual source member + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Transformation expression + Itself + + + + Create a type mapping from the destination to the source type, using the members as validation + + Itself + + + + Common mapping configuration options between generic and non-generic mapping configuration + + Source type + Destination type + Concrete return type for fluent interface + + + + Construct the destination object using the service locator + + Itself + + + + For self-referential types, limit recurse depth. + Enables PreserveReferences. + + Number of levels to limit to + Itself + + + + Preserve object identity. Useful for circular references. + + Itself + + + + Disable constructor validation. During mapping this map is used against an existing destination object and never constructed itself. + + Itself + + + + Value transformers, typically configured through explicit or extenstion methods. + + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action before member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action after member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Specify which member list to validate + + Member list to validate + Itself + + + + Include this configuration in all derived types' maps. Works by scanning all type maps for matches during configuration. + + Itself + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + + + + + Customize configuration for an individual source member. Member name not known until runtime + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Ignores all properties that have either a private or protected setter, forcing the mapper to respect encapsulation (note: order matters, so place this before explicit configuration of any properties with an inaccessible setter) + + Itself + + + + When using ReverseMap, ignores all properties that have either a private or protected setter, keeping the reverse mapping consistent with the forward mapping (note: properties with an inaccessible setter may still be mapped unless IgnoreAllPropertiesWithAnInaccessibleSetter is also used) + + Itself + + + + Supply a custom instantiation expression for the destination type + + Expression to create the destination type given the source object + Itself + + + + Supply a custom instantiation function for the destination type, based on the entire resolution context + + Not used for LINQ projection (ProjectTo) + Callback to create the destination type given the current resolution context + Itself + + + + Customize configuration for individual constructor parameter + + Constructor parameter name + Options + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + + + + + Skip normal member mapping and convert using a instantiated during mapping + Use this method if you need to specify the converter type at runtime + + Type converter type + + + + Skip member mapping and use a custom expression to convert to the destination type + + Callback to convert from source type to destination type + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, including destination object + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, with source, destination and context + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter instance + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter type + + + + Options for a single map operation + + + + + Construct services using this callback. Use this for child/nested containers + + + + + + Add context items to be accessed at map time inside an or + + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Member configuration options + + Source type for this member + Type for this member + Destination type for this map + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + + + Substitute a custom value when the source member resolves as null + + Value to use + + + + Map destination member using a custom value resolver + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom member value resolver supplied with a source member + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + + + + Map destination member using a custom member value resolver supplied from a source member name + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + Source member name + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Map destination member using a custom function. Access both the source and destination object. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, and destination member. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, destination member, and context. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom expression. Used in LINQ projection (ProjectTo). + + Member type of the source member to use + Map expression + + + + Specify the source member to map from. Can only reference a member on the type + + Property name referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Allow this member to be null. This prevents generating a check condition for it. + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + Mapping order value + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + + + Conditionally map this member against the source, destination, source and destination members + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object and the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object, the destination object, and the current resolution context + + + + Ignore this member for LINQ projections unless explicitly expanded during projection + + + + + The destination member being configured. + + + + + Apply a transformation function after any resolved destination member value with the given type + + Transformation expression + + + + Specify a value converter to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + + + + Specify a value converter to convert from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member to supply to the value converter + + + + Specify a value converter to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + + + + Specify a value converter instance from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member name to supply to the value converter + + + + Configuration options for an individual member + + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + Member to supply to value resolver + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Specify a value converter type to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + + + + Specify a value converter type to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Destination member type + Value converter instance + Source member name to supply to the value converter + + + + Defines a naming convention strategy + + + + + Regular expression on how to tokenize a member + + + + + Mapping execution strategy, as a chain of responsibility + + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Builds a mapping expression equivalent to the base Map method + + + + + Source parameter + Destination parameter + ResolutionContext parameter + Map expression + + + + Base class for simple object mappers that don't want to use expressions. + + type of the source + type of the destination + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Performs conversion from source to destination type + + Source object + Destination object + The compile time type of the source object + The compile time type of the destination object + Resolution context + Destination object + + + + Member configuration options + + Source type for this member + Destination type for this map + Type for this member + + + + Specify the source member to map from. Can only reference a member on the type + Any null reference exceptions in this expression will be ignored (similar to flattening behavior) + + Member type of the source member to use + Expression referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Configuration for profile-specific maps + + + + + Disable constructor mapping. Use this if you don't intend to have AutoMapper try to map to constructors + + + + + Creates a mapping configuration from the type to the type + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the type to the type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Create a mapping configuration from the source type to the destination type. + Use this method when the source and destination type are known at runtime and not compile time. + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the source type to the destination type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Clear the list of recognized prefixes. + + + + + Recognize a list of prefixes to be removed from source member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from source member names when matching + + List of postfixes + + + + Provide an alias for a member name when matching source member names + + Original member name + Alias to match against + + + + Provide a new value for a part of a members name + + Original member value + New member value + + + + Recognize a list of prefixes to be removed from destination member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from destination member names when matching + + List of postfixes + + + + Add a property name to globally ignore. Matches against the beginning of the property names. + + Property name to match against + + + + Allow null destination values. If false, destination objects will be created for deep object graphs. Default true. + + + + + Allow null destination collections. If true, null source collections result in null destination collections. Default false. + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Naming convention for source members + + + + + Naming convention for destination members + + + + + Specify common configuration for all type maps. + + configuration callback + + + + Customize configuration for all members across all maps + + Condition + Callback for member options. Use the property map for conditional maps. + + + + Include extension methods against source members for matching destination members to. Default source extension methods from + + Static type that contains extension methods + + + + Value transformers. Modify the list directly or use + + + + + Source member configuration options + + + + + Ignore this member when validating source members, MemberList.Source. + Does not affect validation for the default case, MemberList.Destination. + + + + + Converts source type to destination type instead of normal member mapping + + Source type + Destination type + + + + Performs conversion from source to destination type + + Source object + Destination object + Resolution context + Destination object + + + + Converts a source member value to a destination member value + + Source member type + Destination member type + + + + Perform conversion from source member value to destination member value + + Source member object + Resolution context + Destination member value + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Source member + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Member list to check for configuration validation + + + + + Check that all destination members are mapped + + + + + Check that all source members are mapped + + + + + Check neither source nor destination members, skipping validation + + + + + Provides a named configuration for maps. Naming conventions become scoped per profile. + + + + + Queryable extensions for AutoMapper + + + + + Maps a queryable expression of a source type to a queryable expression of a destination type + + Source type + Destination type + Source queryable + Destination queryable + + Mapped destination queryable + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Expression to project into + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Explicit members to expand + Expression to project into + + + + Projects the source type to the destination type given the mapping configuration + + Destination type to map to + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Expression visitor for making member access null-safe. + + + NullSafeQueryRewriter is copied from the NeinLinq project, licensed under the MIT license. + Copyright (c) 2014-2018 Axel Heer. + See https://github.com/axelheer/nein-linq/blob/master/src/NeinLinq/NullsafeQueryRewriter.cs + + + + + + + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Context information regarding resolution of a destination value + + + + + Mapping operation options + + + + + Context items from + + + + + Current mapper + + + + + Instance cache for resolving circular references + + + + + Instance cache for resolving keeping track of depth + + + + + Contains cached reflection information for easy retrieval + + + + + Main configuration object holding all mapping configuration for a source and destination type + + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Value transformer list + Transformation expression + + + diff --git a/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.dll b/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.dll new file mode 100644 index 0000000..e0d84fc Binary files /dev/null and b/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.dll differ diff --git a/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.pdb b/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.pdb new file mode 100644 index 0000000..bee23ce Binary files /dev/null and b/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.pdb differ diff --git a/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.xml b/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.xml new file mode 100644 index 0000000..21057bd --- /dev/null +++ b/packages/AutoMapper.9.0.0/lib/netstandard2.0/AutoMapper.xml @@ -0,0 +1,1754 @@ + + + + AutoMapper + + + + + Add Action called against the IConfigurationProvider before it gets sealed + + + + + Add an action to be called when validating the configuration. + + the validation callback + + + + Allow the same map to exist in different profiles. + The default is to throw an exception, true means the maps are merged. + + + + + How many levels deep should AutoMapper try to inline the execution plan for child classes. + See the docs for details. + + + + + Auto map to this destination type from the specified source type. + Discovered during scanning assembly scanning for configuration when calling + + + + + If set to true, construct the destination object using the service locator. + + + + + For self-referential types, limit recurse depth. + + + + + If set to true, preserve object identity. Useful for circular references. + + + + + If set to true, disable constructor validation. + + + + + If set to true, include this configuration in all derived types' maps. + + + + + Skip normal member mapping and convert using a instantiated during mapping. + + + + + Ignore this member for configuration validation and skip during mapping. + + + Must be used in combination with + + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + Must be used in combination with + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + + Must be used in combination with + + + + + Substitute a custom value when the source member resolves as null + + + Must be used in combination with + + + + + Value to use if source value is null + + + + + Specify the source member to map from. Can only reference a member on the type + + + Must be used in combination with + + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + Must be used in combination with + + + + + Specify a value converter type to convert from the matching source member to the destination member + Use with to specify a separate source member to supply to the value converter + + + Must be used in combination with + + + + + type + + + + + Map destination member using a custom value resolver. + Use with to specify an type. + + + Must be used in combination with + + + + + or type + + + + + Contains profile-specific configuration + + + + + Source extension methods included for search + + + + + Specify which properties should be mapped. + By default only public properties are mapped. + + + + + Specify which fields should be mapped. + By default only public fields are mapped. + + + + + Specify which methods, of those that are eligible (public, parameterless, and non-static or extension methods), should be mapped. + By default all eligible methods are mapped. + + + + + Specify which constructors should be considered for the destination objects. + By default all constructors are considered. + + + + + Contains member configuration relating to source members + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Member maps with default values. Used in dynamic/dictionary scenarios when source/destination members do not exist. + + + + + Gets the feature of type . + + The type of the feature. + The feature or null if feature not exists. + + + + Add or update the feature. Existing feature of the same type will be replaced. + + The feature. + + + + Get all configured type maps created + + All configured type maps + + + + Find the for the configured source and destination type + + Configured source type + Configured destination type + Type map configuration + + + + Find the for the configured type pair + + Type pair + Type map configuration + + + + Find the for the configured source and destination type + + Source type + Destination type + Type map configuration + + + + Resolve the for the configured source and destination type, checking parent types + + Configured source type + Configured destination type + Type map configuration + + + + Resolve the for the configured type pair, checking parent types + + Type pair + Type map configuration + + + + Dry run all configured type maps and throw for each problem + + + + + Dry run single type map + + Type map to check + + + + Dry run all type maps in given profile + + Profile name of type maps to test + + + + Dry run all type maps in given profile + + Profile type + + + + Get all configured mappers + + List of mappers + + + + Gets the features collection. + + The feature colection. + + + + Find a matching object mapper. + + the types to match + the matching mapper or null + + + + Factory method to create formatters, resolvers and type converters + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Create a mapper instance based on this configuration. Mapper instances are lightweight and can be created as needed. + + The mapper instance + + + + Create a mapper instance with the specified service constructor to be used for resolvers and type converters. + + Service factory to create services + The mapper instance + + + + Compile all underlying mapping expressions to cached delegates. + Use if you want AutoMapper to compile all mappings up front instead of deferring expression compilation for each first map. + + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + the runtime type of the source object + the runtime type of the destination object + the execution plan + + + + Builds the execution plan used to map the source to destination. + Useful to understand what exactly is happening during mapping. + See the wiki for details. + + The source/destination map request + the execution plan + + + + Map constructor parameter from member expression + + Member type + Member expression + + + + Map constructor parameter from custom func that has access to + + Not used for LINQ projection (ProjectTo) + Custom func + + + + Ignore this member for validation and skip during mapping + + + + + Execute a mapping from the source object to a new destination object. + The source type is inferred from the source object. + + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to a new destination object. + + Source type to use, regardless of the runtime type + Destination type to create + Source object to map from + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with supplied mapping options. + + Source type to use + Destination type to create + Source object to map from + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to the existing destination object. + + Source type to use + Destination type + Source object to map from + Destination object to map into + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to the existing destination object with supplied mapping options. + + Source type to use + Destination type + Source object to map from + Destination object to map into + Mapping options + The mapped destination object, same instance as the object + + + + Execute a mapping from the source object to a new destination object with explicit objects + + Source object to map from + Source type to use + Destination type to create + Mapped destination object + + + + Execute a mapping from the source object to a new destination object with explicit objects and supplied mapping options. + + Source object to map from + Source type to use + Destination type to create + Mapping options + Mapped destination object + + + + Execute a mapping from the source object to existing destination object with explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapped destination object, same instance as the object + + + + Execute a mapping from the source object to existing destination object with supplied mapping options and explicit objects + + Source object to map from + Destination object to map into + Source type to use + Destination type to use + Mapping options + Mapped destination object, same instance as the object + + + + Configuration provider for performing maps + + + + + Factory method for creating runtime instances of converters, resolvers etc. + + + + + Project the input queryable. + + Projections are only calculated once and cached + Destination type + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Project the input queryable. + + Destination type to map to + Queryable source + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Add an existing profile + + Profile to add + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add an existing profile type. Profile will be instantiated and added to the configuration. + + Profile type + + + + Add profiles contained in an IEnumerable + + IEnumerable of Profile + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Assembly names to load and scan containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Add mapping definitions contained in assemblies. + Looks for definitions and classes decorated with + + Types from assemblies containing mapping definitions + + + + Supply a factory method callback for creating resolvers and type converters + + Factory method + + + + Create a named profile with the supplied configuration + + Profile name, must be unique + Profile configuration + + + + Get the features collection. + + + + + Object mappers + + + + + Advance Configuration + + + + + Custom mapping action + + Source type + Destination type + + + + Implementors can modify both the source and destination objects + + Source object + Destination object + Resolution context + + + + Mapping configuration options for non-generic maps + + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the names of child object properties to map to the destination + + + + + Create a type mapping from the destination to the source type, using the destination members as validation. + + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize individual members + + Name of the member + Callback for configuring member + Itself + + + + Mapping configuration options + + Source type + Destination type + + + + Add extra configuration to the current map by also mapping the specified child objects to the destination object. + The maps from the child types to the destination need to be created explicitly. + + the child objects to map to the destination + + + + + Customize configuration for a path inside the destination object. + + Expression to the destination sub object + Callback for member options + Itself + + + + Customize configuration for members not previously configured + + Callback for member options + + + + Customize configuration for individual member + + Expression to the top-level destination member. This must be a member on the TDestination type + Callback for member options + Itself + + + + Customize configuration for individual member. Used when the name isn't known at compile-time + + Destination member name + Callback for member options + Itself + + + + Customize configuration for all members + + Callback for member options + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + Destination type to use + + + + Customize configuration for an individual source member + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Transformation expression + Itself + + + + Create a type mapping from the destination to the source type, using the members as validation + + Itself + + + + Common mapping configuration options between generic and non-generic mapping configuration + + Source type + Destination type + Concrete return type for fluent interface + + + + Construct the destination object using the service locator + + Itself + + + + For self-referential types, limit recurse depth. + Enables PreserveReferences. + + Number of levels to limit to + Itself + + + + Preserve object identity. Useful for circular references. + + Itself + + + + Disable constructor validation. During mapping this map is used against an existing destination object and never constructed itself. + + Itself + + + + Value transformers, typically configured through explicit or extenstion methods. + + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types before member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action before member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom function to the source and/or destination types after member mapping + + Not used for LINQ projection (ProjectTo) + Callback for the source/destination types + Itself + + + + Execute a custom mapping action after member mapping + + Not used for LINQ projection (ProjectTo) + Mapping action type instantiated during mapping + Itself + + + + Specify which member list to validate + + Member list to validate + Itself + + + + Include this configuration in all derived types' maps. Works by scanning all type maps for matches during configuration. + + Itself + + + + Include this configuration in derived types' maps + + Derived source type + Derived destination type + Itself + + + + Include the base type map's configuration in this map + + Base source type + Base destination type + + + + + Customize configuration for an individual source member. Member name not known until runtime + + Expression to source member. Must be a member of the type + Callback for member configuration options + Itself + + + + Ignores all properties that have either a private or protected setter, forcing the mapper to respect encapsulation (note: order matters, so place this before explicit configuration of any properties with an inaccessible setter) + + Itself + + + + When using ReverseMap, ignores all properties that have either a private or protected setter, keeping the reverse mapping consistent with the forward mapping (note: properties with an inaccessible setter may still be mapped unless IgnoreAllPropertiesWithAnInaccessibleSetter is also used) + + Itself + + + + Supply a custom instantiation expression for the destination type + + Expression to create the destination type given the source object + Itself + + + + Supply a custom instantiation function for the destination type, based on the entire resolution context + + Not used for LINQ projection (ProjectTo) + Callback to create the destination type given the current resolution context + Itself + + + + Customize configuration for individual constructor parameter + + Constructor parameter name + Options + Itself + + + + Override the destination type mapping for looking up configuration and instantiation + + + + + + Skip normal member mapping and convert using a instantiated during mapping + Use this method if you need to specify the converter type at runtime + + Type converter type + + + + Skip member mapping and use a custom expression to convert to the destination type + + Callback to convert from source type to destination type + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, including destination object + + + + Skip member mapping and use a custom function to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Callback to convert from source type to destination type, with source, destination and context + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter instance + + + + Skip member mapping and use a custom type converter instance to convert to the destination type + + Not used for LINQ projection (ProjectTo) + Type converter type + + + + Options for a single map operation + + + + + Construct services using this callback. Use this for child/nested containers + + + + + + Add context items to be accessed at map time inside an or + + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types before member mapping + + Callback for the source/destination types + + + + Execute a custom function to the source and/or destination types after member mapping + + Callback for the source/destination types + + + + Member configuration options + + Source type for this member + Type for this member + Destination type for this map + + + + Do not precompute the execution plan for this member, just map it at runtime. + Simplifies the execution plan by not inlining. + + + + + Substitute a custom value when the source member resolves as null + + Value to use + + + + Map destination member using a custom value resolver + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom member value resolver supplied with a source member + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + + + + Map destination member using a custom member value resolver supplied from a source member name + + Not used for LINQ projection (ProjectTo) + Value resolver type + Source member to supply + Source member name + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Map destination member using a custom function. Access both the source and destination object. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, and destination member. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom function. Access the source, destination object, destination member, and context. + + Not used for LINQ projection (ProjectTo) + Function to map to destination member + + + + Map destination member using a custom expression. Used in LINQ projection (ProjectTo). + + Member type of the source member to use + Map expression + + + + Specify the source member to map from. Can only reference a member on the type + + Property name referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Allow this member to be null. This prevents generating a check condition for it. + + + + + Supply a custom mapping order instead of what the .NET runtime returns + + Mapping order value + + + + Use the destination value instead of mapping from the source value or creating a new instance + + + + + Conditionally map this member against the source, destination, source and destination members + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object and the current resolution context + + + + Conditionally map this member, evaluated before accessing the source value + + Condition to evaluate using the source object, the destination object, and the current resolution context + + + + Ignore this member for LINQ projections unless explicitly expanded during projection + + + + + The destination member being configured. + + + + + Apply a transformation function after any resolved destination member value with the given type + + Transformation expression + + + + Specify a value converter to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + + + + Specify a value converter to convert from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member to supply to the value converter + + + + Specify a value converter to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + + + + Specify a value converter instance from the specified source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Value converter instance + Source member name to supply to the value converter + + + + Configuration options for an individual member + + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + + + + Map destination member using a custom value resolver. Used when the value resolver is not known at compile-time + + Not used for LINQ projection (ProjectTo) + Value resolver type + Member to supply to value resolver + + + + Map destination member using a custom value resolver instance + + Not used for LINQ projection (ProjectTo) + Value resolver instance to use + Source member to supply to value resolver + + + + Specify a value converter type to convert from the matching source member to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + + + + Specify a value converter type to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Value converter type + Source member name to supply to the value converter + + + + Specify a value converter instance to convert from the specified source member name to the destination member + + + Value converters are similar to type converters, but scoped to a single member. Value resolvers receive the enclosed source/destination objects as parameters. + Value converters do not. This makes it possible to reuse value converters across multiple members and multiple maps. + + Source member type + Destination member type + Value converter instance + Source member name to supply to the value converter + + + + Defines a naming convention strategy + + + + + Regular expression on how to tokenize a member + + + + + Mapping execution strategy, as a chain of responsibility + + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Builds a mapping expression equivalent to the base Map method + + + + + Source parameter + Destination parameter + ResolutionContext parameter + Map expression + + + + Base class for simple object mappers that don't want to use expressions. + + type of the source + type of the destination + + + + When true, the mapping engine will use this mapper as the strategy + + Resolution context + Is match + + + + Performs conversion from source to destination type + + Source object + Destination object + The compile time type of the source object + The compile time type of the destination object + Resolution context + Destination object + + + + Member configuration options + + Source type for this member + Destination type for this map + Type for this member + + + + Specify the source member to map from. Can only reference a member on the type + Any null reference exceptions in this expression will be ignored (similar to flattening behavior) + + Member type of the source member to use + Expression referencing the source member to map against + + + + Ignore this member for configuration validation and skip during mapping + + + + + Configuration for profile-specific maps + + + + + Disable constructor mapping. Use this if you don't intend to have AutoMapper try to map to constructors + + + + + Creates a mapping configuration from the type to the type + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the type to the type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Create a mapping configuration from the source type to the destination type. + Use this method when the source and destination type are known at runtime and not compile time. + + Source type + Destination type + Mapping expression for more configuration options + + + + Creates a mapping configuration from the source type to the destination type. + Specify the member list to validate against during configuration validation. + + Source type + Destination type + Member list to validate + Mapping expression for more configuration options + + + + Clear the list of recognized prefixes. + + + + + Recognize a list of prefixes to be removed from source member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from source member names when matching + + List of postfixes + + + + Provide an alias for a member name when matching source member names + + Original member name + Alias to match against + + + + Provide a new value for a part of a members name + + Original member value + New member value + + + + Recognize a list of prefixes to be removed from destination member names when matching + + List of prefixes + + + + Recognize a list of postfixes to be removed from destination member names when matching + + List of postfixes + + + + Add a property name to globally ignore. Matches against the beginning of the property names. + + Property name to match against + + + + Allow null destination values. If false, destination objects will be created for deep object graphs. Default true. + + + + + Allow null destination collections. If true, null source collections result in null destination collections. Default false. + + + + + Allows to enable null-value propagation for query mapping. + Some providers (such as EntityFrameworkQueryVisitor) do not work with this feature enabled! + + + + + Naming convention for source members + + + + + Naming convention for destination members + + + + + Specify common configuration for all type maps. + + configuration callback + + + + Customize configuration for all members across all maps + + Condition + Callback for member options. Use the property map for conditional maps. + + + + Include extension methods against source members for matching destination members to. Default source extension methods from + + Static type that contains extension methods + + + + Value transformers. Modify the list directly or use + + + + + Source member configuration options + + + + + Ignore this member when validating source members, MemberList.Source. + Does not affect validation for the default case, MemberList.Destination. + + + + + Converts source type to destination type instead of normal member mapping + + Source type + Destination type + + + + Performs conversion from source to destination type + + Source object + Destination object + Resolution context + Destination object + + + + Converts a source member value to a destination member value + + Source member type + Destination member type + + + + Perform conversion from source member value to destination member value + + Source member object + Resolution context + Destination member value + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Extension point to provide custom resolution for a destination value + + + + + Implementors use source object to provide a destination object. + + Source object + Destination object, if exists + Source member + Destination member + The context of the mapping + Result, typically build from the source resolution result + + + + Member list to check for configuration validation + + + + + Check that all destination members are mapped + + + + + Check that all source members are mapped + + + + + Check neither source nor destination members, skipping validation + + + + + Provides a named configuration for maps. Naming conventions become scoped per profile. + + + + + Queryable extensions for AutoMapper + + + + + Maps a queryable expression of a source type to a queryable expression of a destination type + + Source type + Destination type + Source queryable + Destination queryable + + Mapped destination queryable + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Expression to project into + + + + Extension method to project from a queryable using the provided mapping engine + + Projections are only calculated once and cached + Destination type + Queryable source + Mapper configuration + Explicit members to expand + Expression to project into + + + + Projects the source type to the destination type given the mapping configuration + + Destination type to map to + Queryable source + Mapper configuration + Optional parameter object for parameterized mapping expressions + Explicit members to expand + Queryable result, use queryable extension methods to project and execute result + + + + Expression visitor for making member access null-safe. + + + NullSafeQueryRewriter is copied from the NeinLinq project, licensed under the MIT license. + Copyright (c) 2014-2018 Axel Heer. + See https://github.com/axelheer/nein-linq/blob/master/src/NeinLinq/NullsafeQueryRewriter.cs + + + + + + + + + + + if targetType is oldType, method will return newType + if targetType is not oldType, method will return targetType + if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType + + + + + + + + + Context information regarding resolution of a destination value + + + + + Mapping operation options + + + + + Context items from + + + + + Current mapper + + + + + Instance cache for resolving circular references + + + + + Instance cache for resolving keeping track of depth + + + + + Contains cached reflection information for easy retrieval + + + + + Main configuration object holding all mapping configuration for a source and destination type + + + + + Apply a transformation function after any resolved destination member value with the given type + + Value type to match and transform + Value transformer list + Transformation expression + + + diff --git a/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/.signature.p7s b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/.signature.p7s new file mode 100644 index 0000000..9a49664 Binary files /dev/null and b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/.signature.p7s differ diff --git a/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0.nupkg b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0.nupkg new file mode 100644 index 0000000..df9119e Binary files /dev/null and b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0.nupkg differ diff --git a/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/lib/netstandard2.0/AutoMapper.Extensions.Microsoft.DependencyInjection.dll b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/lib/netstandard2.0/AutoMapper.Extensions.Microsoft.DependencyInjection.dll new file mode 100644 index 0000000..a9c023b Binary files /dev/null and b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/lib/netstandard2.0/AutoMapper.Extensions.Microsoft.DependencyInjection.dll differ diff --git a/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/lib/netstandard2.0/AutoMapper.Extensions.Microsoft.DependencyInjection.pdb b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/lib/netstandard2.0/AutoMapper.Extensions.Microsoft.DependencyInjection.pdb new file mode 100644 index 0000000..56be0af Binary files /dev/null and b/packages/AutoMapper.Extensions.Microsoft.DependencyInjection.7.0.0/lib/netstandard2.0/AutoMapper.Extensions.Microsoft.DependencyInjection.pdb differ diff --git a/packages/Microsoft.AspNet.Mvc.5.2.4/Content/Web.config.install.xdt b/packages/Microsoft.AspNet.Mvc.5.2.4/Content/Web.config.install.xdt new file mode 100644 index 0000000..d79263c --- /dev/null +++ b/packages/Microsoft.AspNet.Mvc.5.2.4/Content/Web.config.install.xdt @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.Mvc.5.2.4/Content/Web.config.uninstall.xdt b/packages/Microsoft.AspNet.Mvc.5.2.4/Content/Web.config.uninstall.xdt new file mode 100644 index 0000000..efc0325 --- /dev/null +++ b/packages/Microsoft.AspNet.Mvc.5.2.4/Content/Web.config.uninstall.xdt @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.Mvc.5.2.4/Microsoft.AspNet.Mvc.5.2.4.nupkg b/packages/Microsoft.AspNet.Mvc.5.2.4/Microsoft.AspNet.Mvc.5.2.4.nupkg new file mode 100644 index 0000000..aba78ee Binary files /dev/null and b/packages/Microsoft.AspNet.Mvc.5.2.4/Microsoft.AspNet.Mvc.5.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.Mvc.5.2.4/lib/net45/System.Web.Mvc.dll b/packages/Microsoft.AspNet.Mvc.5.2.4/lib/net45/System.Web.Mvc.dll new file mode 100644 index 0000000..8fc56f7 Binary files /dev/null and b/packages/Microsoft.AspNet.Mvc.5.2.4/lib/net45/System.Web.Mvc.dll differ diff --git a/packages/Microsoft.AspNet.Mvc.5.2.4/lib/net45/System.Web.Mvc.xml b/packages/Microsoft.AspNet.Mvc.5.2.4/lib/net45/System.Web.Mvc.xml new file mode 100644 index 0000000..b4b6df8 --- /dev/null +++ b/packages/Microsoft.AspNet.Mvc.5.2.4/lib/net45/System.Web.Mvc.xml @@ -0,0 +1,11485 @@ + + + + System.Web.Mvc + + + + Represents an attribute that specifies which HTTP verbs an action method will respond to. + + + Initializes a new instance of the class by using a list of HTTP verbs that the action method will respond to. + The HTTP verbs that the action method will respond to. + The parameter is null or zero length. + + + Initializes a new instance of the class using the HTTP verbs that the action method will respond to. + The HTTP verbs that the action method will respond to. + + + Determines whether the specified method information is valid for the specified controller context. + true if the method information is valid; otherwise, false. + The controller context. + The method information. + The parameter is null. + + + Gets or sets the list of HTTP verbs that the action method will respond to. + The list of HTTP verbs that the action method will respond to. + + + Provides information about an action method, such as its name, controller, parameters, attributes, and filters. + + + Initializes a new instance of the class. + + + Gets the name of the action method. + The name of the action method. + + + Gets the controller descriptor. + The controller descriptor. + + + Executes the action method by using the specified parameters and controller context. + The result of executing the action method. + The controller context. + The parameters of the action method. + + + Returns an array of custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Returns an array of custom attributes that are defined for this member, identified by type. + An array of custom attributes, or an empty array if no custom attributes of the specified type exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + The parameter is null. + + + Gets the filter attributes. + The filter attributes. + true to use the cache, otherwise false. + + + Returns the filters that are associated with this action method. + The filters that are associated with this action method. + + + Returns the parameters of the action method. + The parameters of the action method. + + + Returns the action-method selectors. + The action-method selectors. + + + Determines whether one or more instances of the specified attribute type are defined for this member. + true if is defined for this member; otherwise, false. + The type of the custom attribute. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The parameter is null. + + + Gets the unique ID for the action descriptor using lazy initialization. + The unique ID. + + + Provides the context for the ActionExecuted method of the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The controller context. + The action method descriptor. + true if the action is canceled. + The exception object. + The parameter is null. + + + Gets or sets the action descriptor. + The action descriptor. + + + Gets or sets a value that indicates that this object is canceled. + true if the context canceled; otherwise, false. + + + Gets or sets the exception that occurred during the execution of the action method, if any. + The exception that occurred during the execution of the action method. + + + Gets or sets a value that indicates whether the exception is handled. + true if the exception is handled; otherwise, false. + + + Gets or sets the result returned by the action method. + The result returned by the action method. + + + Provides the context for the ActionExecuting method of the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified controller context, action descriptor, and action-method parameters. + The controller context. + The action descriptor. + The action-method parameters. + The or parameter is null. + + + Gets or sets the action descriptor. + The action descriptor. + + + Gets or sets the action-method parameters. + The action-method parameters. + + + Gets or sets the result that is returned by the action method. + The result that is returned by the action method. + + + Represents the base class for filter attributes. + + + Initializes a new instance of the class. + + + Called by the ASP.NET MVC framework after the action method executes. + The filter context. + + + Called by the ASP.NET MVC framework before the action method executes. + The filter context. + + + Called by the ASP.NET MVC framework after the action result executes. + The filter context. + + + Called by the ASP.NET MVC framework before the action result executes. + The filter context. + + + Represents an attribute that is used to influence the selection of an action method. + + + Initializes a new instance of the class. + + + Determines whether the action method selection is valid for the specified controller context. + true if the action method selection is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Represents an attribute that is used for the name of an action. + + + Initializes a new instance of the class. + Name of the action. + The parameter is null or empty. + + + Determines whether the action name is valid within the specified controller context. + true if the action name is valid within the specified controller context; otherwise, false. + The controller context. + The name of the action. + Information about the action method. + + + Gets or sets the name of the action. + The name of the action. + + + Represents an attribute that affects the selection of an action method. + + + Initializes a new instance of the class. + + + Determines whether the action name is valid in the specified controller context. + true if the action name is valid in the specified controller context; otherwise, false. + The controller context. + The name of the action. + Information about the action method. + + + Represents the result of an action method. + + + Initializes a new instance of the class. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context in which the result is executed. The context information includes the controller, HTTP content, request context, and route data. + + + Represents a delegate that contains the logic for selecting an action method. + + + Provides a class that implements the interface in order to support additional metadata. + + + Initializes a new instance of the class. + The name of the model metadata. + The value of the model metadata. + + + Gets the name of the additional metadata attribute. + The name of the of the additional metadata attribute. + + + Provides metadata to the model metadata creation process. + The meta data. + + + Gets the type of the of the additional metadata attribute. + The type of the of the additional metadata attribute. + + + Gets the value of the of the additional metadata attribute. + The value of the of the additional metadata attribute. + + + Represents support for rendering HTML in AJAX scenarios within a view. + + + Initializes a new instance of the class using the specified view context and view data container. + The view context. + The view data container. + One or both of the parameters is null. + + + Initializes a new instance of the class by using the specified view context, view data container, and route collection. + The view context. + The view data container. + The URL route collection. + One or more of the parameters is null. + + + Gets or sets the root path for the location to use for globalization script files. + The location of the folder where globalization script files are stored. The default location is "~/Scripts/Globalization". + + + Serializes the specified message and returns the resulting JSON-formatted string. + The serialized message as a JSON-formatted string. + The message to serialize. + + + Gets the collection of URL routes for the application. + The collection of routes for the application. + + + Gets the ViewBag. + The ViewBag. + + + Gets the context information about the view. + The context of the view. + + + Gets the current view data dictionary. + The view data dictionary. + + + Gets the view data container. + The view data container. + + + Represents support for rendering HTML in AJAX scenarios within a strongly typed view. + The type of the model. + + + Initializes a new instance of the class by using the specified view context and view data container. + The view context. + The view data container. + + + Initializes a new instance of the class by using the specified view context, view data container, and URL route collection. + The view context. + The view data container. + The URL route collection. + + + Gets the ViewBag. + The ViewBag. + + + Gets the strongly typed version of the view data dictionary. + The strongly typed data dictionary of the view. + + + Represents a class that extends the class by adding the ability to determine whether an HTTP request is an AJAX request. + + + Determines whether the specified HTTP request is an AJAX request. + true if the specified HTTP request is an AJAX request; otherwise, false. + The HTTP request. + The parameter is null (Nothing in Visual Basic). + + + Represents an attribute that marks controllers and actions to skip the during authorization. + + + Initializes a new instance of the class. + + + Allows a request to include HTML markup during model binding by skipping request validation for the property. (It is strongly recommended that your application explicitly check all models where you disable request validation in order to prevent script exploits.) + + + Initializes a new instance of the class. + + + This method supports the ASP.NET MVC validation infrastructure and is not intended to be used directly from your code. + The model metadata. + + + Controls interpretation of a controller name when constructing a . + + + Find the controller in the current area. + + + Find the controller in the root area. + + + Provides a way to register one or more areas in an ASP.NET MVC application. + + + Initializes a new instance of the class. + + + Gets the name of the area to register. + The name of the area to register. + + + Registers all areas in an ASP.NET MVC application. + + + Registers all areas in an ASP.NET MVC application by using the specified user-defined information. + An object that contains user-defined information to pass to the area. + + + Registers an area in an ASP.NET MVC application using the specified area's context information. + Encapsulates the information that is required in order to register the area. + + + Encapsulates the information that is required in order to register an area within an ASP.NET MVC application. + + + Initializes a new instance of the class using the specified area name and routes collection. + The name of the area to register. + The collection of routes for the application. + + + Initializes a new instance of the class using the specified area name, routes collection, and user-defined data. + The name of the area to register. + The collection of routes for the application. + An object that contains user-defined information to pass to the area. + + + Gets the name of the area to register. + The name of the area to register. + + + Maps the specified URL route and associates it with the area that is specified by the property. + A reference to the mapped route. + The name of the route. + The URL pattern for the route. + The parameter is null. + + + Maps the specified URL route and associates it with the area that is specified by the property, using the specified route default values. + A reference to the mapped route. + The name of the route. + The URL pattern for the route. + An object that contains default route values. + The parameter is null. + + + Maps the specified URL route and associates it with the area that is specified by the property, using the specified route default values and constraint. + A reference to the mapped route. + The name of the route. + The URL pattern for the route. + An object that contains default route values. + A set of expressions that specify valid values for a URL parameter. + The parameter is null. + + + Maps the specified URL route and associates it with the area that is specified by the property, using the specified route default values, constraints, and namespaces. + A reference to the mapped route. + The name of the route. + The URL pattern for the route. + An object that contains default route values. + A set of expressions that specify valid values for a URL parameter. + An enumerable set of namespaces for the application. + The parameter is null. + + + Maps the specified URL route and associates it with the area that is specified by the property, using the specified route default values and namespaces. + A reference to the mapped route. + The name of the route. + The URL pattern for the route. + An object that contains default route values. + An enumerable set of namespaces for the application. + The parameter is null. + + + Maps the specified URL route and associates it with the area that is specified by the property, using the specified namespaces. + A reference to the mapped route. + The name of the route. + The URL pattern for the route. + An enumerable set of namespaces for the application. + The parameter is null. + + + Gets the namespaces for the application. + An enumerable set of namespaces for the application. + + + Gets a collection of defined routes for the application. + A collection of defined routes for the application. + + + Gets an object that contains user-defined information to pass to the area. + An object that contains user-defined information to pass to the area. + + + Provides an abstract class to implement a metadata provider. + + + Called from constructors in a derived class to initialize the class. + + + When overridden in a derived class, creates the model metadata for the property. + The model metadata for the property. + The set of attributes. + The type of the container. + The model accessor. + The type of the model. + The name of the property. + + + Gets a list of attributes. + A list of attributes. + The type of the container. + The property descriptor. + The attribute container. + + + Returns a list of properties for the model. + A list of properties for the model. + The model container. + The type of the container. + + + Returns the metadata for the specified property using the container type and property descriptor. + The metadata for the specified property using the container type and property descriptor. + The model accessor. + The type of the container. + The property descriptor + + + Returns the metadata for the specified property using the container type and property name. + The metadata for the specified property using the container type and property name. + The model accessor. + The type of the container. + The name of the property. + + + Returns the metadata for the specified property using the type of the model. + The metadata for the specified property using the type of the model. + The model accessor. + The type of the model. + + + Returns the type descriptor from the specified type. + The type descriptor. + The type. + + + Provides an abstract class for classes that implement a validation provider. + + + Called from constructors in derived classes to initialize the class. + + + Gets a type descriptor for the specified type. + A type descriptor for the specified type. + The type of the validation provider. + + + Gets the validators for the model using the metadata and controller context. + The validators for the model. + The metadata. + The controller context. + + + Gets the validators for the model using the metadata, the controller context, and a list of attributes. + The validators for the model. + The metadata. + The controller context. + The list of attributes. + + + Provided for backward compatibility with ASP.NET MVC 3. + + + Initializes a new instance of the class. + + + Represents an attribute that is used to set the timeout value, in milliseconds, for an asynchronous method. + + + Initializes a new instance of the class. + The timeout value, in milliseconds. + + + Gets the timeout duration, in milliseconds. + The timeout duration, in milliseconds. + + + Called by ASP.NET before the asynchronous action method executes. + The filter context. + + + Encapsulates the information that is required for using an attribute. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified controller context. + The context within which the result is executed. The context information includes the controller, HTTP content, request context, and route data. + + + Initializes a new instance of the class using the specified controller context and action descriptor. + The context in which the result is executed. The context information includes the controller, HTTP content, request context, and route data. + An object that provides information about an action method, such as its name, controller, parameters, attributes, and filters. + + + Provides information about the action method that is marked by the attribute, such as its name, controller, parameters, attributes, and filters. + The action descriptor for the action method that is marked by the attribute. + + + Gets or sets the result that is returned by an action method. + The result that is returned by an action method. + + + Specifies that access to a controller or action method is restricted to users who meet the authorization requirement. + + + Initializes a new instance of the class. + + + When overridden, provides an entry point for custom authorization checks. + true if the user is authorized; otherwise, false. + The HTTP context, which encapsulates all HTTP-specific information about an individual HTTP request. + The parameter is null. + + + Processes HTTP requests that fail authorization. + Encapsulates the information for using . The object contains the controller, HTTP context, request context, action result, and route data. + + + Called when a process requests authorization. + The filter context, which encapsulates information for using . + The parameter is null. + + + Called when the caching module requests authorization. + A reference to the validation status. + The HTTP context, which encapsulates all HTTP-specific information about an individual HTTP request. + The parameter is null. + + + Gets or sets the user roles that are authorized to access the controller or action method. + The user roles that are authorized to access the controller or action method. + + + Gets the unique identifier for this attribute. + The unique identifier for this attribute. + + + Gets or sets the users that are authorized to access the controller or action method. + The users that are authorized to access the controller or action method. + + + Represents an attribute that is used to provide details about how model binding to a parameter should occur. + + + Initializes a new instance of the class. + + + Gets or sets a comma-delimited list of property names for which binding is not allowed. + The exclude list. + + + Gets or sets a comma-delimited list of property names for which binding is allowed. + The include list. + + + Determines whether the specified property is allowed. + true if the specified property is allowed; otherwise, false. + The name of the property. + + + Gets or sets the prefix to use when markup is rendered for binding to an action argument or to a model property. + The prefix to use. + + + Represents the base class for views that are compiled by the BuildManager class before being rendered by a view engine. + + + Initializes a new instance of the class using the specified controller context and view path. + The controller context. + The view path. + + + Initializes a new instance of the class using the specified controller context, view path, and view page activator. + Context information for the current controller. This information includes the HTTP context, request context, route data, parent action view context, and more. + The path to the view that will be rendered. + The object responsible for dynamically constructing the view page at run time. + The parameter is null. + The parameter is null or empty. + + + Renders the specified view context by using the specified the writer object. + Information related to rendering a view, such as view data, temporary data, and form context. + The writer object. + The parameter is null. + An instance of the view type could not be created. + + + When overridden in a derived class, renders the specified view context by using the specified writer object and object instance. + Information related to rendering a view, such as view data, temporary data, and form context. + The writer object. + An object that contains additional information that can be used in the view. + + + Gets or sets the view path. + The view path. + + + Provides a base class for view engines. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified view page activator. + The view page activator. + + + Gets a value that indicates whether a file exists in the specified virtual file system (path). + true if the file exists in the virtual file system; otherwise, false. + The controller context. + The virtual path. + + + + Gets the view page activator. + The view page activator. + + + Maps a browser request to a byte array. + + + Initializes a new instance of the class. + + + Binds the model by using the specified controller context and binding context. + The bound data object.Implements + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + The parameter is null. + + + Provides an abstract class to implement a cached metadata provider. + + + + Initializes a new instance of the class. + + + Gets the cache item policy. + The cache item policy. + + + Gets the cache key prefix. + The cache key prefix. + + + When overridden in a derived class, creates the cached model metadata for the property. + The cached model metadata for the property. + The attributes. + The container type. + The model accessor. + The model type. + The property name. + + + Creates prototype metadata by applying the prototype and model access to yield the final metadata. + The prototype metadata. + The prototype. + The model accessor. + + + Creates a metadata prototype. + A metadata prototype. + The attributes. + The container type. + The model type. + The property name. + + + Gets the metadata for the properties. + The metadata for the properties. + The container. + The container type. + + + Returns the metadata for the specified property. + The metadata for the specified property. + The model accessor. + The container type. + The property descriptor. + + + Returns the metadata for the specified property. + The metadata for the specified property. + The model accessor. + The container type. + The property name. + + + Returns the cached metadata for the specified property using the type of the model. + The cached metadata for the specified property using the type of the model. + The model accessor. + The type of the container. + + + Gets the prototype cache. + The prototype cache. + + + Provides a container to cache attributes. + + + Initializes a new instance of the class. + The attributes. + + + Gets the data type. + The data type. + + + Gets the display. + The display. + + + Gets the display column. + The display column. + + + Gets the display format. + The display format. + + + Gets the display name. + The display name. + + + Indicates whether a data field is editable. + true if the field is editable; otherwise, false. + + + Gets the hidden input. + The hidden input. + + + Indicates whether a data field is read only. + true if the field is read only; otherwise, false. + + + Indicates whether a data field is required. + true if the field is required; otherwise, false. + + + Indicates whether a data field is scaffold. + true if the field is scaffold; otherwise, false. + + + Gets the UI hint. + The UI hint. + + + Provides a container to cache . + + + Initializes a new instance of the class using the prototype and model accessor. + The prototype. + The model accessor. + + + Initializes a new instance of the class using the provider, container type, model type, property name and attributes. + The provider. + The container type. + The model type. + The property name. + The attributes. + + + Gets a value that indicates whether empty strings that are posted back in forms should be converted to Nothing.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A value that indicates whether empty strings that are posted back in forms should be converted to Nothing. + + + Gets meta information about the data type.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + Meta information about the data type. + + + Gets the description of the model.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + The description of the model. + + + Gets the display format string for the model.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + The display format string for the model. + + + Gets the display name of the model.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + The display name of the model. + + + Gets the edit format string of the model.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + The edit format string of the model. + + + Gets a value that indicates whether the model uses a non-default edit format. + A value that indicates whether non-default edit format is used. + + + Gets a value that indicates whether the model object should be rendered using associated HTML elements.Gets a value that indicates whether the model object should be rendered using associated HTML elements.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A value that indicates whether the model object should be rendered using associated HTML elements. + + + Gets a value that indicates whether the model is read-only.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A value that indicates whether the model is read-only. + + + Gets a value that indicates whether the model is required.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A value that indicates whether the model is required. + + + Gets the string to display for null values.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + The string to display for null values. + + + Gets a value that represents order of the current metadata.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A value that represents order of the current metadata. + + + Gets a short display name.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A short display name. + + + Gets a value that indicates whether the property should be displayed in read-only views such as list and detail views.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A value that indicates whether the property should be displayed in read-only views such as list and detail views. + + + Gets or sets a value that indicates whether the model should be displayed in editable views.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + Returns . + + + Gets the simple display string for the model.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + The simple display string for the model. + + + Gets a hint that suggests what template to use for this model.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A hint that suggests what template to use for this model. + + + Gets a value that can be used as a watermark.If the value is cached, the cashed value is returned; otherwise the value is retrieved from the model metadata and stored in the cache. + A value that can be used as a watermark. + + + Implements the default cached model metadata provider for ASP.NET MVC. + + + Initializes a new instance of the class. + + + Returns a container of real instances of the cached metadata class based on prototype and model accessor. + A container of real instances of the cached metadata class. + The prototype. + The model accessor. + + + Returns a container prototype instances of the metadata class. + a container prototype instances of the metadata class. + The attributes type. + The container type. + The model type. + The property name. + + + Provides a container for cached metadata. + he type of the container. + + + Constructor for creating real instances of the metadata class based on a prototype. + The provider. + The container type. + The model type. + The property name. + The prototype. + + + Constructor for creating the prototype instances of the metadata class. + The prototype. + The model accessor. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that indicates whether empty strings that are posted back in forms should be converted to null. + A cached value that indicates whether empty strings that are posted back in forms should be converted to null. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets meta information about the data type. + Meta information about the data type. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets the description of the model. + The description of the model. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets the display format string for the model. + The display format string for the model. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets the display name of the model. + The display name of the model. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets the edit format string of the model. + The edit format string of the model. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as . + A value that indicates whether a non-default edit format is used. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that indicates whether the model object should be rendered using associated HTML elements. + A cached value that indicates whether the model object should be rendered using associated HTML elements. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that indicates whether the model is read-only. + A cached value that indicates whether the model is read-only. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that indicates whether the model is required. + A cached value that indicates whether the model is required. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets the cached string to display for null values. + The cached string to display for null values. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that represents order of the current metadata. + A cached value that represents order of the current metadata. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a short display name. + A short display name. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that indicates whether the property should be displayed in read-only views such as list and detail views. + A cached value that indicates whether the property should be displayed in read-only views such as list and detail views. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that indicates whether the model should be displayed in editable views. + A cached value that indicates whether the model should be displayed in editable views. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets the cached simple display string for the model. + The cached simple display string for the model. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached hint that suggests what template to use for this model. + A cached hint that suggests what template to use for this model. + + + This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as .Gets or sets a cached value that can be used as a watermark. + A cached value that can be used as a watermark. + + + Gets or sets a cached value that indicates whether empty strings that are posted back in forms should be converted to null. + A cached value that indicates whether empty strings that are posted back in forms should be converted to null. + + + Gets or sets meta information about the data type. + The meta information about the data type. + + + Gets or sets the description of the model. + The description of the model. + + + Gets or sets the display format string for the model. + The display format string for the model. + + + Gets or sets the display name of the model. + The display name of the model. + + + Gets or sets the edit format string of the model. + The edit format string of the model. + + + Gets or sets the simple display string for the model. + The simple display string for the model. + + + Gets or sets a value that indicates whether the model object should be rendered using associated HTML elements. + A value that indicates whether the model object should be rendered using associated HTML elements. + + + Gets or sets a value that indicates whether the model is read-only. + A value that indicates whether the model is read-only. + + + Gets or sets a value that indicates whether the model is required. + A value that indicates whether the model is required. + + + Gets or sets the string to display for null values. + The string to display for null values. + + + Gets or sets a value that represents order of the current metadata. + The order value of the current metadata. + + + Gets or sets the prototype cache. + The prototype cache. + + + Gets or sets a short display name. + The short display name. + + + Gets or sets a value that indicates whether the property should be displayed in read-only views such as list and detail views. + true if the model should be displayed in read-only views; otherwise, false. + + + Gets or sets a value that indicates whether the model should be displayed in editable views. + true if the model should be displayed in editable views; otherwise, false. + + + Gets or sets the simple display string for the model. + The simple display string for the model. + + + Gets or sets a hint that suggests what template to use for this model. + A hint that suggests what template to use for this model. + + + Gets or sets a value that can be used as a watermark. + A value that can be used as a watermark. + + + Provides a mechanism to propagates notification that model binder operations should be canceled. + + + Initializes a new instance of the class. + + + Returns the default cancellation token. + The default cancellation token.Implements + The controller context. + The binding context. + + + Represents an attribute that is used to indicate that an action method should be called only as a child action. + + + Initializes a new instance of the class. + + + Called when authorization is required. + An object that encapsulates the information that is required in order to authorize access to the child action. + + + Represents a value provider for values from child actions. + + + Initializes a new instance of the class. + The controller context. + + + Retrieves a value object using the specified key. + The value object for the specified key. + The key. + + + Represents a factory for creating value provider objects for child actions. + + + Initializes a new instance of the class. + + + Returns a object for the specified controller context. + A object. + The controller context. + + + Returns the client data-type model validators. + + + Initializes a new instance of the class. + + + Returns the client data-type model validators. + The client data-type model validators. + The metadata. + The context. + + + Gets the resource class key. + The resource class key. + + + Provides an attribute that compares two properties of a model. + + + Initializes a new instance of the class. + The property to compare with the current property. + + + Applies formatting to an error message based on the data field where the compare error occurred. + The formatted error message. + The name of the field that caused the validation failure. + + + Formats the property for client validation by prepending an asterisk (*) and a dot. + The string "*." is prepended to the property. + The property. + + + Gets a list of compare-value client validation rules for the property using the specified model metadata and controller context. + A list of compare-value client validation rules. + The model metadata. + The controller context. + + + Determines whether the specified object is equal to the compared object. + null if the value of the compared property is equal to the value parameter; otherwise, a validation result that contains the error message that indicates that the comparison failed. + The value of the object to compare. + The validation context. + + + Gets the property to compare with the current property. + The property to compare with the current property. + + + Gets the other properties display name. + The other properties display name. + + + Represents a user-defined content type that is the result of an action method. + + + Initializes a new instance of the class. + + + Gets or sets the content. + The content. + + + Gets or sets the content encoding. + The content encoding. + + + Gets or sets the type of the content. + The type of the content. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context within which the result is executed. + The parameter is null. + + + Provides methods that respond to HTTP requests that are made to an ASP.NET MVC Web site. + + + Initializes a new instance of the class. + + + Gets the action invoker for the controller. + The action invoker. + + + Provides asynchronous operations. + Returns . + + + Begins execution of the specified request context + Returns an IAsyncController instance. + The request context. + The asynchronous callback. + The state. + + + Begins to invoke the action in the current controller context. + Returns an IAsyncController instance. + The callback. + The state. + + + Gets or sets the binder. + The binder. + + + Creates a content result object by using a string. + The content result instance. + The content to write to the response. + + + Creates a content result object by using a string and the content type. + The content result instance. + The content to write to the response. + The content type (MIME type). + + + Creates a content result object by using a string, the content type, and content encoding. + The content result instance. + The content to write to the response. + The content type (MIME type). + The content encoding. + + + Creates an action invoker. + An action invoker. + + + Creates a temporary data provider. + A temporary data provider. + + + Gets whether to disable the asynchronous support for the controller. + true to disable the asynchronous support for the controller; otherwise, false. + + + Releases all resources that are used by the current instance of the class. + + + Releases unmanaged resources and optionally releases managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Ends the invocation of the action in the current controller context. + The asynchronous result. + + + Ends the execute core. + The asynchronous result. + + + Invokes the action in the current controller context. + + + Creates a FileContentResult object by using the file contents and file type. + The file-content result object. + The binary content to send to the response. + The content type (MIME type). + + + Creates a FileContentResult object by using the file contents, content type, and the destination file name. + The file-content result object. + The binary content to send to the response. + The content type (MIME type). + The file name to use in the file-download dialog box that is displayed in the browser. + + + Creates a FileStreamResult object by using the Stream object and content type. + The file-content result object. + The stream to send to the response. + The content type (MIME type). + + + Creates a FileStreamResult object using the Stream object, the content type, and the target file name. + The file-stream result object. + The stream to send to the response. + The content type (MIME type) + The file name to use in the file-download dialog box that is displayed in the browser. + + + Creates a FilePathResult object by using the file name and the content type. + The file-stream result object. + The path of the file to send to the response. + The content type (MIME type). + + + Creates a FilePathResult object by using the file name, the content type, and the file download name. + The file-stream result object. + The path of the file to send to the response. + The content type (MIME type). + The file name to use in the file-download dialog box that is displayed in the browser. + + + Called when a request matches this controller, but no method with the specified action name is found in the controller. + The name of the attempted action. + + + Gets HTTP-specific information about an individual HTTP request. + The HTTP context. + + + Returns an instance of the class. + An instance of the class. + + + Returns an instance of the class. + An instance of the class. + The status description. + + + Initializes data that might not be available when the constructor is called. + The HTTP context and route data. + + + Creates a object. + The object that writes the script to the response. + The JavaScript code to run on the client + + + Creates a object that serializes the specified object to JavaScript Object Notation (JSON). + The JSON result object that serializes the specified object to JSON format. The result object that is prepared by this method is written to the response by the ASP.NET MVC framework when the object is executed. + The JavaScript object graph to serialize. + + + Creates a object that serializes the specified object to JavaScript Object Notation (JSON) format. + The JSON result object that serializes the specified object to JSON format. + The JavaScript object graph to serialize. + The content type (MIME type). + + + Creates a object that serializes the specified object to JavaScript Object Notation (JSON) format. + The JSON result object that serializes the specified object to JSON format. + The JavaScript object graph to serialize. + The content type (MIME type). + The content encoding. + + + Creates a object that serializes the specified object to JavaScript Object Notation (JSON) format using the content type, content encoding, and the JSON request behavior. + The result object that serializes the specified object to JSON format. + The JavaScript object graph to serialize. + The content type (MIME type). + The content encoding. + The JSON request behavior + + + Creates a object that serializes the specified object to JavaScript Object Notation (JSON) format using the specified content type and JSON request behavior. + The result object that serializes the specified object to JSON format. + The JavaScript object graph to serialize. + The content type (MIME type). + The JSON request behavior + + + Creates a JsonResult object that serializes the specified object to JavaScript Object Notation (JSON) format using the specified JSON request behavior. + The result object that serializes the specified object to JSON format. + The JavaScript object graph to serialize. + The JSON request behavior. + + + Gets the model state dictionary object that contains the state of the model and of model-binding validation. + The model state dictionary. + + + Called after the action method is invoked. + Information about the current request and action. + + + Called before the action method is invoked. + Information about the current request and action. + + + Called when authorization occurs. + Information about the current request and action. + + + Called when authorization challenge occurs. + Information about the current request and action. + + + Called when authorization occurs. + Information about the current request and action. + + + Called when an unhandled exception occurs in the action. + Information about the current request and action. + + + Called after the action result that is returned by an action method is executed. + Information about the current request and action result. + + + Called before the action result that is returned by an action method is executed. + Information about the current request and action result. + + + Creates a object that renders a partial view. + A partial-view result object. + + + Creates a object that renders a partial view, by using the specified model. + A partial-view result object. + The model that is rendered by the partial view + + + Creates a object that renders a partial view, by using the specified view name. + A partial-view result object. + The name of the view that is rendered to the response. + + + Creates a object that renders a partial view, by using the specified view name and model. + A partial-view result object. + The name of the view that is rendered to the response. + The model that is rendered by the partial view + + + Gets the HTTP context profile. + The HTTP context profile. + + + Creates a object that redirects to the specified URL. + The redirect result object. + The URL to redirect to. + + + Returns an instance of the class with the Permanent property set to true. + An instance of the class with the Permanent property set to true. + The URL to redirect to. + + + Redirects to the specified action using the action name. + The redirect result object. + The name of the action. + + + Redirects to the specified action using the action name and route values. + The redirect result object. + The name of the action. + The parameters for a route. + + + Redirects to the specified action using the action name and controller name. + The redirect result object. + The name of the action. + The name of the controller. + + + Redirects to the specified action using the action name, controller name, and route dictionary. + The redirect result object. + The name of the action. + The name of the controller. + The parameters for a route. + + + Redirects to the specified action using the action name, controller name, and route values. + The redirect result object. + The name of the action. + The name of the controller. + The parameters for a route. + + + Redirects to the specified action using the action name and route dictionary. + The redirect result object. + The name of the action. + The parameters for a route. + + + Returns an instance of the class with the Permanent property set to true using the specified action name. + An instance of the class with the Permanent property set to true using the specified action name, controller name, and route values. + The action name. + + + Returns an instance of the class with the Permanent property set to true using the specified action name, and route values. + An instance of the class with the Permanent property set to true using the specified action name, and route values. + The action name. + The route values. + + + Returns an instance of the class with the Permanent property set to true using the specified action name, and controller name. + An instance of the class with the Permanent property set to true using the specified action name, and controller name. + The action name. + The controller name. + + + Returns an instance of the class with the Permanent property set to true using the specified action name, controller name, and route values. + An instance of the class with the Permanent property set to true using the specified action name, controller name, and route values. + The action name. + The controller name. + The route values. + + + Returns an instance of the class with the Permanent property set to true using the specified action name, controller name, and route values. + An instance of the class with the Permanent property set to true using the specified action name, controller name, and route values. + The action name. + The controller name. + The route values. + + + Returns an instance of the class with the Permanent property set to true using the specified action name, and route values. + An instance of the class with the Permanent property set to true using the specified action name, and route values. + The action name. + The route values. + + + Redirects to the specified route using the specified route values. + The redirect-to-route result object. + The parameters for a route. + + + Redirects to the specified route using the route name. + The redirect-to-route result object. + The name of the route. + + + Redirects to the specified route using the route name and route values. + The redirect-to-route result object. + The name of the route. + The parameters for a route. + + + Redirects to the specified route using the route name and route dictionary. + The redirect-to-route result object. + The name of the route. + The parameters for a route. + + + Redirects to the specified route using the route dictionary. + The redirect-to-route result object. + The parameters for a route. + + + Returns an instance of the RedirectResult class with the Permanent property set to true using the specified route values. + Returns an instance of the RedirectResult class with the Permanent property set to true. + The route name. + + + Returns an instance of the RedirectResult class with the Permanent property set to true using the specified route name. + Returns an instance of the RedirectResult class with the Permanent property set to true using the specified route name. + The route name. + + + Returns an instance of the RedirectResult class with the Permanent property set to true using the specified route name and route values. + An instance of the RedirectResult class with the Permanent property set to true using the specified route name and route values. + The route name. + The route values. + + + Returns an instance of the RedirectResult class with the Permanent property set to true using the specified route name and route values. + An instance of the RedirectResult class with the Permanent property set to true. + The route name. + The route values. + + + Returns an instance of the RedirectResult class with the Permanent property set to true using the specified route values. + An instance of the RedirectResult class with the Permanent property set to true using the specified route values. + The route values. + + + Gets the HttpRequestBase object for the current HTTP request. + The request object. + + + Represents a replaceable dependency resolver providing services. By default, it uses the . + + + Gets the HttpResponseBase object for the current HTTP response. + The HttpResponseBase object for the current HTTP response. + + + Gets the route data for the current request. + The route data. + + + Gets the HttpServerUtilityBase object that provides methods that are used during Web request processing. + The HTTP server object. + + + Gets the HttpSessionStateBase object for the current HTTP request. + The HTTP session-state object for the current HTTP request. + + + This method calls the BeginExecute method. + The result of the operation. + The request context. + The asynchronous callback. + The state of the object. + + + This method calls the EndExecute method. + The asynchronous result of the operation. + + + This method calls the OnAuthentication method. + The filter context. + + + This method calls the OnAuthenticationChallenge method. + The filter context. + + + This method calls the OnActionExecuted method. + The filter context. + + + This method calls the OnActionExecuting method. + The filter context. + + + This method calls the OnAuthorization method. + The filter context. + + + This method calls the OnException method. + The filter context. + + + This method calls the OnResultExecuted method. + The filter context. + + + This method calls the OnResultExecuting method. + The filter context. + + + Gets the temporary-data provider object that is used to store data for the next request. + The temporary-data provider. + + + Updates the specified model instance using values from the controller's current value provider. + true if the update is successful; otherwise, false. + The model instance to update. + The type of the model object. + The parameter or the ValueProvider property is null. + + + Updates the specified model instance using values from the controller's current value provider and a prefix. + true if the update is successful; otherwise, false. + The model instance to update. + The prefix to use when looking up values in the value provider. + The type of the model object. + The parameter or the ValueProvider property is null. + + + Updates the specified model instance using values from the controller's current value provider, a prefix, and included properties. + true if the update is successful; otherwise, false. + The model instance to update. + The prefix to use when looking up values in the value provider. + A list of properties of the model to update. + The type of the model object. + The parameter or the ValueProvider property is null. + + + Updates the specified model instance using values from the controller's current value provider, a prefix, a list of properties to exclude, and a list of properties to include. + true if the update is successful; otherwise, false. + The model instance to update. + The prefix to use when looking up values in the value provider. + A list of properties of the model to update. + A list of properties to explicitly exclude from the update. These are excluded even if they are listed in the includeProperties parameter list. + The type of the model object. + The parameter or the ValueProvider property is null. + + + Updates the specified model instance using values from the value provider, a prefix, a list of properties to exclude , and a list of properties to include. + true if the update is successful; otherwise, false. + The model instance to update. + The prefix to use when looking up values in the value provider. + A list of properties of the model to update. + A list of properties to explicitly exclude from the update. These are excluded even if they are listed in the includeProperties parameter list. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the value provider, a prefix, and included properties. + true if the update is successful; otherwise, false. + The model instance to update. + The prefix to use when looking up values in the value provider. + A list of properties of the model to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the value provider and a list of properties to include. + true if the update is successful; otherwise, false. + The model instance to update. + A list of properties of the model to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the controller's current value provider and included properties. + true if the update is successful; otherwise, false. + The model instance to update. + A list of properties of the model to update. + The type of the model object. + + + Updates the specified model instance using values from the value provider and a list of properties to include. + true if the update is successful; otherwise, false. + The model instance to update. + A list of properties of the model to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the value provider. + true if the update is successful; otherwise, false. + The model instance to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Validates the specified model instance. + true if the model validation is successful; otherwise, false. + The model to validate. + + + Validates the specified model instance using an HTML prefix. + true if the model validation is successful; otherwise, false. + The model to validate. + The prefix to use when looking up values in the model provider. + + + Updates the specified model instance using values from the controller's current value provider. + The model instance to update. + The type of the model object. + + + Updates the specified model instance using values from the controller's current value provider and a prefix. + The model instance to update. + A prefix to use when looking up values in the value provider. + The type of the model object. + + + Updates the specified model instance using values from the controller's current value provider, a prefix, and included properties. + The model instance to update. + A prefix to use when looking up values in the value provider. + A list of properties of the model to update. + The type of the model object. + + + Updates the specified model instance using values from the controller's current value provider, a prefix, a list of properties to exclude, and a list of properties to include. + The model instance to update. + A prefix to use when looking up values in the value provider. + A list of properties of the model to update. + A list of properties to explicitly exclude from the update. These are excluded even if they are listed in the includeProperties list. + The type of the model object. + + + Updates the specified model instance using values from the value provider, a prefix, a list of properties to exclude, and a list of properties to include. + The model instance to update. + The prefix to use when looking up values in the value provider. + A list of properties of the model to update. + A list of properties to explicitly exclude from the update. These are excluded even if they are listed in the includeProperties parameter list. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the value provider, a prefix, and a list of properties to include. + The model instance to update. + The prefix to use when looking up values in the value provider. + A list of properties of the model to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the value provider, a prefix, and a list of properties to include. + The model instance to update. + A list of properties of the model to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the controller object's current value provider. + The model instance to update. + A list of properties of the model to update. + The type of the model object. + + + Updates the specified model instance using values from the value provider, a prefix, and a list of properties to include. + The model instance to update. + A list of properties of the model to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Updates the specified model instance using values from the value provider. + The model instance to update. + A dictionary of values that is used to update the model. + The type of the model object. + + + Gets the URL helper object that is used to generate URLs by using routing. + The URL helper object. + + + Gets the user security information for the current HTTP request. + The user security information for the current HTTP request. + + + Validates the specified model instance. + The model to validate. + + + Validates the specified model instance using an HTML prefix. + The model to validate. + The prefix to use when looking up values in the model provider. + + + Creates a object that renders a view to the response. + The result that renders a view to the response. + + + Creates a object by using the model that renders a view to the response. + The view result. + The model that is rendered by the view. + + + Creates a object by using the view name that renders a view. + The view result. + The name of the view that is rendered to the response. + + + Creates a object that renders the specified IView object. + The view result. + The view that is rendered to the response. + The model that is rendered by the view. + + + Creates a object using the view name and master-page name that renders a view to the response. + The view result. + The name of the view that is rendered to the response. + The name of the master page or template to use when the view is rendered. + + + Creates a object using the view name, master-page name, and model that renders a view. + The view result. + The name of the view that is rendered to the response. + The name of the master page or template to use when the view is rendered. + The model that is rendered by the view. + + + Creates a object that renders the specified IView object. + The view result. + The view that is rendered to the response. + + + Creates a object that renders the specified object. + The view result. + The view that is rendered to the response. + The model that is rendered by the view. + + + Gets the view engine collection. + The view engine collection. + + + Represents a class that is responsible for invoking the action methods of a controller. + + + Initializes a new instance of the class. + + + Gets or sets the model binders that are associated with the action. + The model binders that are associated with the action. + + + Creates the action result. + The action result object. + The controller context. + The action descriptor. + The action return value. + + + Finds the information about the action method. + Information about the action method. + The controller context. + The controller descriptor. + The name of the action. + + + Retrieves information about the controller by using the specified controller context. + Information about the controller. + The controller context. + + + Retrieves information about the action filters. + Information about the action filters. + The controller context. + The action descriptor. + + + Gets the value of the specified action-method parameter. + The value of the action-method parameter. + The controller context. + The parameter descriptor. + + + Gets the values of the action-method parameters. + The values of the action-method parameters. + The controller context. + The action descriptor. + + + Invokes the specified action by using the specified controller context. + The result of executing the action. + The controller context. + The name of the action to invoke. + The parameter is null. + The parameter is null or empty. + The thread was aborted during invocation of the action. + An unspecified error occurred during invocation of the action. + + + Invokes the specified action method by using the specified parameters and the controller context. + The result of executing the action method. + The controller context. + The action descriptor. + The parameters. + + + Invokes the specified action method by using the specified parameters, controller context, and action filters. + The context for the ActionExecuted method of the class. + The controller context. + The action filters. + The action descriptor. + The parameters. + + + Invokes the specified action result by using the specified controller context. + The controller context. + The action result. + + + Invokes the specified action result by using the specified action filters and the controller context. + The context for the ResultExecuted method of the class. + The controller context. + The action filters. + The action result. + + + + + Invokes the specified authorization filters by using the specified action descriptor and controller context. + The context for the object. + The controller context. + The authorization filters. + The action descriptor. + + + Invokes the specified exception filters by using the specified exception and controller context. + The context for the object. + The controller context. + The exception filters. + The exception. + + + Represents the base class for all MVC controllers. + + + Initializes a new instance of the class. + + + Gets or sets the controller context. + The controller context. + + + Executes the specified request context. + The request context. + The parameter is null. + + + Executes the request. + + + Initializes the specified request context. + The request context. + + + Executes the specified request context. + The request context. + + + Gets or sets the dictionary for temporary data. + The dictionary for temporary data. + + + Gets or sets a value that indicates whether request validation is enabled for this request. + true if request validation is enabled for this request; otherwise, false. The default is true. + + + Gets or sets the value provider for the controller. + The value provider for the controller. + + + Gets the dynamic view data dictionary. + The dynamic view data dictionary. + + + Gets or sets the dictionary for view data. + The dictionary for the view data. + + + Represents a class that is responsible for dynamically building a controller. + + + Initializes a new instance of the class. + + + Gets the current controller builder object. + The current controller builder. + + + Gets the default namespaces. + The default namespaces. + + + Gets the associated controller factory. + The controller factory. + + + Sets the controller factory by using the specified type. + The type of the controller factory. + The parameter is null. + The controller factory cannot be assigned from the type in the parameter. + An error occurred while the controller factory was being set. + + + Sets the specified controller factory. + The controller factory. + The parameter is null. + + + Encapsulates information about an HTTP request that matches specified and instances. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified HTTP context, URL route data, and controller. + The HTTP context. + The route data. + The controller. + + + Initializes a new instance of the class by using the specified controller context. + The controller context. + The parameter is null. + + + Initializes a new instance of the class by using the specified request context and controller. + The request context. + The controller. + One or both parameters are null. + + + Gets or sets the controller. + The controller. + + + Gets the display mode. + The display mode. + + + Gets or sets the HTTP context. + The HTTP context. + + + Gets a value that indicates whether the associated action method is a child action. + true if the associated action method is a child action; otherwise, false. + + + Gets an object that contains the view context information for the parent action method. + An object that contains the view context information for the parent action method. + + + Gets or sets the request context. + The request context. + + + Gets or sets the URL route data. + The URL route data. + + + Encapsulates information that describes a controller, such as its name, type, and actions. + + + Initializes a new instance of the class. + + + Gets the name of the controller. + The name of the controller. + + + Gets the type of the controller. + The type of the controller. + + + Finds an action method by using the specified name and controller context. + The information about the action method. + The controller context. + The name of the action. + + + Retrieves a list of action-method descriptors in the controller. + A list of action-method descriptors in the controller. + + + Retrieves custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Retrieves custom attributes of a specified type that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + The parameter is null (Nothing in Visual Basic). + + + Gets the filter attributes. + The filter attributes. + true if the cache should be used; otherwise, false. + + + Retrieves a value that indicates whether one or more instance of the specified custom attribute are defined for this member. + true if the is defined for this member; otherwise, false. + The type of the custom attribute. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The parameter is null (Nothing in Visual Basic). + + + When implemented in a derived class, gets the unique ID for the controller descriptor using lazy initialization. + The unique ID. + + + Adds the controller to the instance. + + + Initializes a new instance of the class. + + + Returns the collection of controller instance filters. + The collection of controller instance filters. + The controller context. + The action descriptor. + + + Represents an attribute that invokes a custom model binder. + + + Initializes a new instance of the class. + + + Retrieves the associated model binder. + A reference to an object that implements the interface. + + + Provides a container for common metadata, for the class, and for the class for a data model. + + + Initializes a new instance of the class. + The data-annotations model metadata provider. + The type of the container. + The model accessor. + The type of the model. + The name of the property. + The display column attribute. + + + Returns simple text for the model data. + Simple text for the model data. + + + Implements the default model metadata provider for ASP.NET MVC. + + + Initializes a new instance of the class. + + + Gets the metadata for the specified property. + The metadata for the property. + The attributes. + The type of the container. + The model accessor. + The type of the model. + The name of the property. + + + Represents the method that creates a instance. + + + Provides a model validator. + + + Initializes a new instance of the class. + The metadata for the model. + The controller context for the model. + The validation attribute for the model. + + + Gets the validation attribute for the model validator. + The validation attribute for the model validator. + + + Gets the error message for the validation failure. + The error message for the validation failure. + + + Retrieves a collection of client validation rules. + A collection of client validation rules. + + + Gets a value that indicates whether model validation is required. + true if model validation is required; otherwise, false. + + + Returns a list of validation error messages for the model. + A list of validation error messages for the model, or an empty list if no errors have occurred. + The container for the model. + + + Provides a model validator for a specified validation type. + + + + Initializes a new instance of the class. + The metadata for the model. + The controller context for the model. + The validation attribute for the model. + + + Gets the validation attribute from the model validator. + The validation attribute from the model validator. + + + Implements the default validation provider for ASP.NET MVC. + + + Initializes a new instance of the class. + + + Gets or sets a value that indicates whether non-nullable value types are required. + true if non-nullable value types are required; otherwise, false. + + + Gets a list of validators. + A list of validators. + The metadata. + The context. + The list of validation attributes. + + + Registers an adapter to provide client-side validation. + The type of the validation attribute. + The type of the adapter. + + + Registers an adapter factory for the validation provider. + The type of the attribute. + The factory that will be used to create the object for the specified attribute. + + + Registers the default adapter. + The type of the adapter. + + + Registers the default adapter factory. + The factory that will be used to create the object for the default adapter. + + + Registers an adapter to provide default object validation. + The type of the adapter. + + + Registers an adapter factory for the default object validation provider. + The factory. + + + Registers an adapter to provide object validation. + The type of the model. + The type of the adapter. + + + Registers an adapter factory for the object validation provider. + The type of the model. + The factory. + + + Provides a factory for validators that are based on . + + + Provides a container for the error-information model validator. + + + Initializes a new instance of the class. + + + Gets a list of error-information model validators. + A list of error-information model validators. + The model metadata. + The controller context. + + + Represents the controller factory that is registered by default. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using a controller activator. + An object that implements the controller activator interface. + + + Creates the specified controller by using the specified request context. + The controller. + The context of the HTTP request, which includes the HTTP context and route data. + The name of the controller. + The parameter is null. + The parameter is null or empty. + + + Retrieves the controller instance for the specified request context and controller type. + The controller instance. + The context of the HTTP request, which includes the HTTP context and route data. + The type of the controller. + + is null. + + cannot be assigned. + An instance of cannot be created. + + + Returns the controller's session behavior. + The controller's session behavior. + The request context. + The type of the controller. + + + Retrieves the controller type for the specified name and request context. + The controller type. + The context of the HTTP request, which includes the HTTP context and route data. + The name of the controller. + + + Releases the specified controller. + The controller to release. + + + This API supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. This method calls the method. + The controller's session behavior. + The request context. + The controller name. + + + Maps a browser request to a data object. This class provides a concrete implementation of a model binder. + + + Initializes a new instance of the class. + + + Gets or sets the model binders for the application. + The model binders for the application. + + + Binds the model by using the specified controller context and binding context. + The bound object. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + The parameter is null. + + + Binds the specified property by using the specified controller context and binding context and the specified property descriptor. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + Describes a property to be bound. The descriptor provides information such as the component type, property type, and property value. It also provides methods to get or set the property value. + + + Creates the specified model type by using the specified controller context and binding context. + A data object of the specified type. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + The type of the model object to return. + + + Creates an index (a subindex) based on a category of components that make up a larger index, where the specified index value is an integer. + The name of the subindex. + The prefix for the subindex. + The index value. + + + Creates an index (a subindex) based on a category of components that make up a larger index, where the specified index value is a string. + The name of the subindex. + The prefix for the subindex. + The index value. + + + Creates the name of the subproperty by using the specified prefix and property name. + The name of the subproperty. + The prefix for the subproperty. + The name of the property. + + + Returns a set of properties that match the property filter restrictions that are established by the specified . + An enumerable set of property descriptors. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + + + Returns the properties of the model by using the specified controller context and binding context. + A collection of property descriptors. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + + + Returns the value of a property using the specified controller context, binding context, property descriptor, and property binder. + An object that represents the property value. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + The descriptor for the property to access. The descriptor provides information such as the component type, property type, and property value. It also provides methods to get or set the property value. + An object that provides a way to bind the property. + + + Returns the descriptor object for a type that is specified by its controller context and binding context. + A custom type descriptor object. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + + + Determines whether a data model is valid for the specified binding context. + true if the model is valid; otherwise, false. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + The parameter is null. + + + Called when the model is updated. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + + + Called when the model is updating. + true if the model is updating; otherwise, false. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + + + Called when the specified property is validated. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + Describes a property to be validated. The descriptor provides information such as the component type, property type, and property value. It also provides methods to get or set the property value. + The value to set for the property. + + + Called when the specified property is validating. + true if the property is validating; otherwise, false. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + Describes a property being validated. The descriptor provides information such as component type, property type, and property value. It also provides methods to get or set the property value. + The value to set for the property. + + + Gets or sets the name of the resource file (class key) that contains localized string values. + The name of the resource file (class key). + + + Sets the specified property by using the specified controller context, binding context, and property value. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + Describes a property to be set. The descriptor provides information such as the component type, property type, and property value. It also provides methods to get or set the property value. + The value to set for the property. + + + Represents a memory cache for view locations. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified cache time span. + The cache time span. + The Ticks attribute of the parameter is set to a negative number. + + + Retrieves the default view location by using the specified HTTP context and cache key. + The default view location. + The HTTP context. + The cache key + The parameter is null. + + + Inserts the view in the specified virtual path by using the specified HTTP context, cache key, and virtual path. + The HTTP context. + The cache key. + The virtual path + The parameter is null. + + + Creates an empty view location cache. + + + Gets or sets the cache time span. + The cache time span. + + + Provides a registration point for dependency resolvers that implement or the Common Service Locator IServiceLocator interface. + + + Initializes a new instance of the class. + + + Gets the implementation of the dependency resolver. + The implementation of the dependency resolver. + + + This API supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. + The implementation of the dependency resolver. + + + This API supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. + The function that provides the service. + The function that provides the services. + + + This API supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. + The common service locator. + + + This API supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. + The object that implements the dependency resolver. + + + Provides a registration point for dependency resolvers using the specified service delegate and specified service collection delegates. + The service delegate. + The services delegates. + + + Provides a registration point for dependency resolvers using the provided common service locator when using a service locator interface. + The common service locator. + + + Provides a registration point for dependency resolvers, using the specified dependency resolver interface. + The dependency resolver. + + + Provides a type-safe implementation of and . + + + Resolves singly registered services that support arbitrary object creation. + The requested service or object. + The dependency resolver instance that this method extends. + The type of the requested service or object. + + + Resolves multiply registered services. + The requested services. + The dependency resolver instance that this method extends. + The type of the requested services. + + + Represents the base class for value providers whose values come from a collection that implements the interface. + The type of the value. + + + Initializes a new instance of the class. + The name/value pairs that are used to initialize the value provider. + Information about a specific culture, such as the names of the culture, the writing system, and the calendar used. + The parameter is null. + + + Determines whether the collection contains the specified prefix. + true if the collection contains the specified prefix; otherwise, false. + The prefix to search for. + The parameter is null. + + + Gets the keys from the prefix. + The keys from the prefix. + the prefix. + + + Returns a value object using the specified key and controller context. + The value object for the specified key. + The key of the value object to retrieve. + The parameter is null. + + + Provides an empty metadata provider for data models that do not require metadata. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + The attributes. + The type of the container. + The model accessor. + The type of the model. + The name of the model. + + + Provides an empty validation provider for models that do not require a validator. + + + Initializes a new instance of the class. + + + Gets the empty model validator. + The empty model validator. + The metadata. + The context. + + + Represents a result that does nothing, such as a controller action method that returns nothing. + + + Initializes a new instance of the class. + + + Executes the specified result context. + The result context. + + + Provides the context for using the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class for the specified exception by using the specified controller context. + The controller context. + The exception. + The parameter is null. + + + Gets or sets the exception object. + The exception object. + + + Gets or sets a value that indicates whether the exception has been handled. + true if the exception has been handled; otherwise, false. + + + Gets or sets the action result. + The action result. + + + Provides a helper class to get the model name from an expression. + + + Gets the model name from a lambda expression. + The model name. + The expression. + + + Gets the model name from a string expression. + The model name. + The expression. + + + Provides a container for client-side field validation metadata. + + + Initializes a new instance of the class. + + + Gets or sets the name of the data field. + The name of the data field. + + + Gets or sets a value that indicates whether the validation message contents should be replaced with the client validation error. + true if the validation message contents should be replaced with the client validation error; otherwise, false. + + + Gets or sets the validator message ID. + The validator message ID. + + + Gets the client validation rules. + The client validation rules. + + + Sends the contents of a binary file to the response. + + + Initializes a new instance of the class by using the specified file contents and content type. + The byte array to send to the response. + The content type to use for the response. + The parameter is null. + + + The binary content to send to the response. + The file contents. + + + Writes the file content to the response. + The response. + + + Sends the contents of a file to the response. + + + Initializes a new instance of the class by using the specified file name and content type. + The name of the file to send to the response. + The content type of the response. + The parameter is null or empty. + + + Gets or sets the path of the file that is sent to the response. + The path of the file that is sent to the response. + + + Writes the file to the response. + The response. + + + Represents a base class that is used to send binary file content to the response. + + + Initializes a new instance of the class. + The type of the content. + The parameter is null or empty. + + + Gets the content type to use for the response. + The type of the content. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context within which the result is executed. + The parameter is null. + + + Gets or sets the content-disposition header so that a file-download dialog box is displayed in the browser with the specified file name. + The name of the file. + + + Writes the file to the response. + The response. + + + Sends binary content to the response by using a instance. + + + Initializes a new instance of the class. + The stream to send to the response. + The content type to use for the response. + The parameter is null. + + + Gets the stream that will be sent to the response. + The file stream. + + + Writes the file to the response. + The response. + + + Represents a metadata class that contains a reference to the implementation of one or more of the filter interfaces, the filter's order, and the filter's scope. + + + Initializes a new instance of the class. + The instance. + The scope. + The order. + + + Represents a constant that is used to specify the default ordering of filters. + + + Gets the instance of this class. + The instance of this class. + + + Gets the order in which the filter is applied. + The order in which the filter is applied. + + + Gets the scope ordering of the filter. + The scope ordering of the filter. + + + Represents the base class for action and result filter attributes. + + + Initializes a new instance of the class. + + + Gets or sets a value that indicates whether more than one instance of the filter attribute can be specified. + true if more than one instance of the filter attribute can be specified; otherwise, false. + + + Gets or sets the order in which the action filters are executed. + The order in which the action filters are executed. + + + Defines a filter provider for filter attributes. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class and optionally caches attribute instances. + true to cache attribute instances; otherwise, false. + + + Gets a collection of custom action attributes. + A collection of custom action attributes. + The controller context. + The action descriptor. + + + Gets a collection of controller attributes. + A collection of controller attributes. + The controller context. + The action descriptor. + + + Aggregates the filters from all of the filter providers into one collection. + The collection filters from all of the filter providers. + The controller context. + The action descriptor. + + + Encapsulates information about the available action filters. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified filters collection. + The filters collection. + + + Gets all the action filters in the application. + The action filters. + + + Gets all the authentication filters in the application. + The list of authentication filters. + + + Gets all the authorization filters in the application. + The authorization filters. + + + Gets all the exception filters in the application. + The exception filters. + + + Gets all the result filters in the application. + The result filters. + + + Represents the collection of filter providers for the application. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with specified list of filter provider. + The list of filter providers. + + + Removes all elements from the collection. + + + Returns the collection of filter providers. + The collection of filter providers. + The controller context. + The action descriptor. + + + Inserts an element into the collection at the specified index. + The zero-based index at which item should be inserted. + The object to insert. The value can be null for reference types. + + + Removes the element at the specified index of the collection + The zero-based index of the element to remove. + + + Replaces the element at the specified index. + The zero-based index of the element to replace. + The new value for the element at the specified index. The value can be null for reference types. + + + Provides a registration point for filters. + + + Provides a registration point for filters. + The collection of filters. + + + Defines values that specify the order in which ASP.NET MVC filters run within the same filter type and filter order. + + + Specifies an order before and after . + + + Specifies an order before and after . + + + Specifies first. + + + Specifies an order before and after . + + + Specifies last. + + + Contains the form value providers for the application. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The collection. + The parameter is null. + + + Gets the specified value provider. + The value provider. + The name of the value provider to get. + The parameter is null or empty. + + + Gets a value that indicates whether the value provider contains an entry that has the specified prefix. + true if the value provider contains an entry that has the specified prefix; otherwise, false. + The prefix to look for. + + + Gets a value from a value provider using the specified key. + A value from a value provider. + The key. + + + Returns a dictionary that contains the value providers. + A dictionary of value providers. + + + Encapsulates information that is required in order to validate and process the input data from an HTML form. + + + Initializes a new instance of the class. + + + Gets the field validators for the form. + A dictionary of field validators for the form. + + + Gets or sets the form identifier. + The form identifier. + + + Returns a serialized object that contains the form identifier and field-validation values for the form. + A serialized object that contains the form identifier and field-validation values for the form. + + + Returns the validation value for the specified input field. + The value to validate the field input with. + The name of the field to retrieve the validation value for. + The parameter is either null or empty. + + + Returns the validation value for the specified input field and a value that indicates what to do if the validation value is not found. + The value to validate the field input with. + The name of the field to retrieve the validation value for. + true to create a validation value if one is not found; otherwise, false. + The parameter is either null or empty. + + + Returns a value that indicates whether the specified field has been rendered in the form. + true if the field has been rendered; otherwise, false. + The field name. + + + Sets a value that indicates whether the specified field has been rendered in the form. + The field name. + true to specify that the field has been rendered in the form; otherwise, false. + + + Determines whether client validation errors should be dynamically added to the validation summary. + true if client validation errors should be added to the validation summary; otherwise, false. + + + Gets or sets the identifier for the validation summary. + The identifier for the validation summary. + + + Enumerates the HTTP request types for a form. + + + Specifies a GET request. + + + Specifies a POST request. + + + Represents a value provider for form values that are contained in a object. + + + Initializes a new instance of the class. + An object that encapsulates information about the current HTTP request. + + + Represents a class that is responsible for creating a new instance of a form-value provider object. + + + Initializes a new instance of the class. + + + Returns a form-value provider object for the specified controller context. + A form-value provider object. + An object that encapsulates information about the current HTTP request. + The parameter is null. + + + Represents a class that contains all the global filters. + + + Initializes a new instance of the class. + + + Adds the specified filter to the global filter collection. + The filter. + + + Adds the specified filter to the global filter collection using the specified filter run order. + The filter. + The filter run order. + + + Removes all filters from the global filter collection. + + + Determines whether a filter is in the global filter collection. + true if is found in the global filter collection; otherwise, false. + The filter. + + + Gets the number of filters in the global filter collection. + The number of filters in the global filter collection. + + + Returns an enumerator that iterates through the global filter collection. + An enumerator that iterates through the global filter collection. + + + Removes all the filters that match the specified filter. + The filter to remove. + + + This API supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. + An enumerator that iterates through the global filter collection. + + + This API supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. + An enumerator that iterates through the global filter collection. + The controller context. + The action descriptor. + + + Represents the global filter collection. + + + Gets or sets the global filter collection. + The global filter collection. + + + Represents an attribute that is used to handle an exception that is thrown by an action method. + + + Initializes a new instance of the class. + + + Gets or sets the type of the exception. + The type of the exception. + + + Gets or sets the master view for displaying exception information. + The master view. + + + Called when an exception occurs. + The action-filter context. + The parameter is null. + + + Gets the unique identifier for this attribute. + The unique identifier for this attribute. + + + Gets or sets the page view for displaying exception information. + The page view. + + + Encapsulates information for handling an error that was thrown by an action method. + + + Initializes a new instance of the class. + The exception. + The name of the controller. + The name of the action. + The parameter is null. + The or parameter is null or empty. + + + Gets or sets the name of the action that was executing when the exception was thrown. + The name of the action. + + + Gets or sets the name of the controller that contains the action method that threw the exception. + The name of the controller. + + + Gets or sets the exception object. + The exception object. + + + Represents an attribute that is used to indicate whether a property or field value should be rendered as a hidden input element. + + + Initializes a new instance of the class. + + + Gets or sets a value that indicates whether to display the value of the hidden input element. + true if the value should be displayed; otherwise, false. + + + Enumerates the date rendering mode for HTML5. + + + The current culture formatting. + + + The RFC 3339 formatting. + + + Supports the rendering of HTML controls in a view. + + + Initializes a new instance of the class by using the specified view context and view data container. + The view context. + The view data container. + The or the viewDataContainer parameter is null. + + + Initializes a new instance of the class by using the specified view context, view data container, and route collection. + The view context. + The view data container. + The route collection. + One or more parameters is null. + + + Replaces underscore characters (_) with hyphens (-) in the specified HTML attributes. + The HTML attributes with underscore characters replaced by hyphens. + The HTML attributes. + + + Generates a hidden form field (anti-forgery token) that is validated when the form is submitted. + The generated form field (anti-forgery token). + + + Generates a hidden form field (anti-forgery token) that is validated when the form is submitted. The field value is generated using the specified salt value. + The generated form field (anti-forgery token). + The salt value, which can be any non-empty string. + + + Generates a hidden form field (anti-forgery token) that is validated when the form is submitted. The field value is generated using the specified salt value, domain, and path. + The generated form field (anti-forgery token). + The salt value, which can be any non-empty string. + The application domain. + The virtual path. + + + Converts the specified attribute value to an HTML-encoded string. + The HTML-encoded string. If the value parameter is null or empty, this method returns an empty string. + The object to encode. + + + Converts the specified attribute value to an HTML-encoded string. + The HTML-encoded string. If the value parameter is null or empty, this method returns an empty string. + The string to encode. + + + Gets or sets a value that indicates whether client validation is enabled. + true if enable client validation is enabled; otherwise, false. + + + Enables input validation that is performed by using client script in the browser. + + + Enables or disables client validation. + true to enable client validation; otherwise, false. + + + Enables or disables unobtrusive JavaScript. + + + Enables or disables unobtrusive JavaScript. + true to enable unobtrusive JavaScript; otherwise, false. + + + Converts the value of the specified object to an HTML-encoded string. + The HTML-encoded string. + The object to encode. + + + Converts the specified string to an HTML-encoded string. + The HTML-encoded string. + The string to encode. + + + Formats the value. + The formatted value. + The value. + The format string. + + + Creates an HTML element ID using the specified element name. + The ID of the HTML element. + The name of the HTML element. + The name parameter is null. + + + Creates an HTML element ID using the specified element name and a string that replaces dots in the name. + The ID of the HTML element. + The name of the HTML element. + The string that replaces dots (.) in the name parameter. + The name parameter or the idAttributeDotReplacement parameter is null. + + + Generates an HTML anchor element (a element) that links to the specified action method, and enables the user to specify the communication protocol, name of the host, and a URL fragment. + An HTML element that links to the specified action method. + The context of the HTTP request. + The collection of URL routes. + The text caption to display for the link. + The name of the route that is used to return a virtual path. + The name of the action method. + The name of the controller. + The communication protocol, such as HTTP or HTTPS. If this parameter is null, the protocol defaults to HTTP. + The name of the host. + The fragment identifier. + An object that contains the parameters for a route. + An object that contains the HTML attributes for the element. + + + Generates an HTML anchor element (a element) that links to the specified action method. + An HTML element that links to the specified action method. + The context of the HTTP request. + The collection of URL routes. + The text caption to display for the link. + The name of the route that is used to return a virtual path. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + An object that contains the HTML attributes for the element. + + + Generates an HTML anchor element (a element) that links to the specified URL route, and enables the user to specify the communication protocol, name of the host, and a URL fragment. + An HTML element that links to the specified URL route. + The context of the HTTP request. + The collection of URL routes. + The text caption to display for the link. + The name of the route that is used to return a virtual path. + The communication protocol, such as HTTP or HTTPS. If this parameter is null, the protocol defaults to HTTP. + The name of the host. + The fragment identifier. + An object that contains the parameters for a route. + An object that contains the HTML attributes for the element. + + + Generates an HTML anchor element (a element) that links to the specified URL route. + An HTML element that links to the specified URL route. + The context of the HTTP request. + The collection of URL routes. + The text caption to display for the link. + The name of the route that is used to return a virtual path. + An object that contains the parameters for a route. + An object that contains the HTML attributes for the element. + + + Returns the HTTP method that handles form input (GET or POST) as a string. + The form method string, either "get" or "post". + The HTTP method that handles the form. + + + Returns the HTML input control type as a string. + The input type string ("checkbox", "hidden", "password", "radio", or "text"). + The enumerated input type. + + + Gets the collection of unobtrusive JavaScript validation attributes using the specified HTML name attribute. + The collection of unobtrusive JavaScript validation attributes. + The HTML name attribute. + + + Gets the collection of unobtrusive JavaScript validation attributes using the specified HTML name attribute and model metadata. + The collection of unobtrusive JavaScript validation attributes. + The HTML name attribute. + The model metadata. + + + Gets or sets the HTML5 date rendering mode. + The HTML5 date rendering mode. + + + Returns a hidden input element that identifies the override method for the specified HTTP data-transfer method that was used by the client. + The override method that uses the HTTP data-transfer method that was used by the client. + The HTTP data-transfer method that was used by the client (DELETE, HEAD, or PUT). + The httpVerb parameter is not "PUT", "DELETE", or "HEAD". + + + Returns a hidden input element that identifies the override method for the specified verb that represents the HTTP data-transfer method used by the client. + The override method that uses the verb that represents the HTTP data-transfer method used by the client. + The verb that represents the HTTP data-transfer method used by the client. + The httpVerb parameter is not "PUT", "DELETE", or "HEAD". + + + Gets or sets the character that replaces periods in the ID attribute of an element. + The character that replaces periods in the ID attribute of an element. + + + Creates a dictionary from an object, by adding each public instance property as a key with its associated value to the dictionary. It will expose public properties from derived types as well. This is typically used with objects of an anonymous type. + The created dictionary of property names and property values. + The object to be converted. + + + Returns markup that is not HTML encoded. + The HTML markup without encoding. + The HTML markup. + + + Returns markup that is not HTML encoded. + The HTML markup without encoding. + The HTML markup. + + + Gets or sets the collection of routes for the application. + The collection of routes for the application. + + + Set element name used to wrap the validation message generated by and other overloads. + + + Set element name used to wrap a top-level message in and other overloads. + + + Gets or sets a value that indicates whether unobtrusive JavaScript is enabled. + true if unobtrusive JavaScript is enabled; otherwise, false. + + + The name of the CSS class that is used to style an input field when a validation error occurs. + + + The name of the CSS class that is used to style an input field when the input is valid. + + + The name of the CSS class that is used to style the error message when a validation error occurs. + + + Element name used to wrap the validation message generated by and other overloads. + + + The name of the CSS class that is used to style the validation message when the input is valid. + + + The name of the CSS class that is used to style validation summary error messages. + + + Element name used to wrap a top-level message in and other overloads. + + + The name of the CSS class that is used to style the validation summary when the input is valid. + + + Gets the view bag. + The view bag. + + + Gets or sets the context information about the view. + The context of the view. + + + Gets the current view data dictionary. + The view data dictionary. + + + Gets or sets the view data container. + The view data container. + + + Represents support for rendering HTML controls in a strongly typed view. + The type of the model. + + + Initializes a new instance of the class by using the specified view context and view data container. + The view context. + The view data container. + + + Initializes a new instance of the class by using the specified view context, view data container, and route collection. + The view context. + The view data container. + The route collection. + + + Gets the view bag. + The view bag. + + + Gets the strongly typed view data dictionary. + The strongly typed view data dictionary. + + + Represents an attribute that is used to restrict an action method so that the method handles only HTTP DELETE requests. + + + Initializes a new instance of the class. + + + Determines whether the action method delete request is valid for the specified controller context. + true if the action method request is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Represents a value provider to use with values that come from a collection of HTTP files. + + + Initializes a new instance of the class. + An object that encapsulates information about the current HTTP request. + + + Represents a class that is responsible for creating a new instance of an HTTP file collection value provider object. + + + Initializes a new instance of the class. + + + Returns a value provider object for the specified controller context. + An HTTP file collection value provider. + An object that encapsulates information about the HTTP request. + The parameter is null. + + + Represents an attribute that is used to restrict an action method so that the method handles only HTTP GET requests. + + + Initializes a new instance of the class. + + + Determines whether the action method get request is valid for the specified controller context. + true if the action method request is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Specifies that the HTTP request must be the HTTP HEAD method. + + + Initializes a new instance of the class. + + + Determines whether the action method request is valid for the specified controller context. + true if the action method request is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Defines an object that is used to indicate that the requested resource was not found. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using a status description. + The status description. + + + Represents an attribute that is used to restrict an action method so that the method handles only HTTP OPTIONS requests. + + + Initializes a new instance of the class. + + + Determines whether the action method request is valid for the specified controller context. + true if the action method request is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Represents an attribute that is used to restrict an action method so that the method handles only HTTP PATCH requests. + + + Initializes a new instance of the class. + + + Determines whether the action method request is valid for the specified controller context. + true if the action method request is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Represents an attribute that is used to restrict an action method so that the method handles only HTTP POST requests. + + + Initializes a new instance of the class. + + + Determines whether the action method post request is valid for the specified controller context. + true if the action method request is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Binds a model to a posted file. + + + Initializes a new instance of the class. + + + Binds the model. + The bound value.Implements + The controller context. + The binding context. + One or both parameters are null. + + + Represents an attribute that is used to restrict an action method so that the method handles only HTTP PUT requests. + + + Initializes a new instance of the class. + + + Determines whether the action method put request is valid for the specified controller context. + true if the action method request is valid for the specified controller context; otherwise, false. + The controller context. + Information about the action method. + + + Extends the class that contains the HTTP values that were sent by a client during a Web request. + + + Retrieves the HTTP data-transfer method override that was used by the client. + The HTTP data-transfer method override that was used by the client. + An object that contains the HTTP values that were sent by a client during a Web request. + The parameter is null. + The HTTP data-transfer method override was not implemented. + + + Provides a way to return an action result with a specific HTTP response status code and description. + + + Initializes a new instance of the class using a status code. + The status code. + + + Initializes a new instance of the class using a status code and status description. + The status code. + The status description. + + + Initializes a new instance of the class using a status code. + The status code. + + + Initializes a new instance of the class using a status code and status description. + The status code. + The status description. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context in which the result is executed. The context information includes the controller, HTTP content, request context, and route data. + + + Gets the HTTP status code. + The HTTP status code. + + + Gets the HTTP status description. + the HTTP status description. + + + Represents the result of an unauthorized HTTP request. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the status description. + The status description. + + + Enumerates the HTTP verbs. + + + Requests that a specified URI be deleted. + + + Retrieves the information or entity that is identified by the URI of the request. + + + Retrieves the message headers for the information or entity that is identified by the URI of the request. + + + Represents a request for information about the communication options available on the request/response chain identified by the Request-URI. + + + Requests that a set of changes described in the request entity be applied to the resource identified by the Request- URI. + + + Posts a new entity as an addition to a URI. + + + Replaces an entity that is identified by a URI. + + + Defines the methods that are used in an action filter. + + + Called after the action method executes. + The filter context. + + + Called before an action method executes. + The filter context. + + + Defines the contract for an action invoker, which is used to invoke an action in response to an HTTP request. + + + Invokes the specified action by using the specified controller context. + true if the action was found; otherwise, false. + The controller context. + The name of the action. + + + Used to create an instance for the current request. + + + Creates an instance of action invoker for the current request. + The created . + + + Defines the methods that are required for an authorization filter. + + + Called when authorization is required. + The filter context. + + + Provides a way for the ASP.NET MVC validation framework to discover at run time whether a validator has support for client validation. + + + When implemented in a class, returns client validation rules for that class. + The client validation rules for this validator. + The model metadata. + The controller context. + + + Defines the methods that are required for a controller. + + + Executes the specified request context. + The request context. + + + Provides fine-grained control over how controllers are instantiated using dependency injection. + + + When implemented in a class, creates a controller. + The created controller. + The request context. + The controller type. + + + Defines the methods that are required for a controller factory. + + + Creates the specified controller by using the specified request context. + The controller. + The request context. + The name of the controller. + + + Gets the controller's session behavior. + The controller's session behavior. + The request context. + The name of the controller whose session behavior you want to get. + + + Releases the specified controller. + The controller. + + + Defines the methods that simplify service location and dependency resolution. + + + Resolves singly registered services that support arbitrary object creation. + The requested service or object. + The type of the requested service or object. + + + Resolves multiply registered services. + The requested services. + The type of the requested services. + + + Represents a special that has the ability to be enumerable. + + + Gets the keys from the prefix. + The keys. + The prefix. + + + Defines the methods that are required for an exception filter. + + + Called when an exception occurs. + The filter context. + + + Provides an interface for finding filters. + + + Returns an enumerator that contains all the instances in the service locator. + The enumerator that contains all the instances in the service locator. + The controller context. + The action descriptor. + + + Provides an interface for exposing attributes to the class. + + + When implemented in a class, provides metadata to the model metadata creation process. + The model metadata. + + + An optional interface for types which provide a . + + + Gets the MethodInfo + + + Defines the methods that are required for a model binder. + + + Binds the model to a value by using the specified controller context and binding context. + The bound value. + The controller context. + The binding context. + + + Defines methods that enable dynamic implementations of model binding for classes that implement the interface. + + + Returns the model binder for the specified type. + The model binder for the specified type. + The type of the model. + + + Defines members that specify the order of filters and whether multiple filters are allowed. + + + When implemented in a class, gets or sets a value that indicates whether multiple filters are allowed. + true if multiple filters are allowed; otherwise, false. + + + When implemented in a class, gets the filter order. + The filter order. + + + Enumerates the types of input controls. + + + A check box. + + + A hidden field. + + + A password box. + + + A radio button. + + + A text box. + + + Defines the methods that are required for a result filter. + + + Called after an action result executes. + The filter context. + + + Called before an action result executes. + The filter context. + + + Associates a route with an area in an ASP.NET MVC application. + + + Gets the name of the area to associate the route with. + The name of the area to associate the route with. + + + Defines the contract for temporary-data providers that store data that is viewed on the next request. + + + Loads the temporary data. + The temporary data. + The controller context. + + + Saves the temporary data. + The controller context. + The values. + + + Used to create an instance for the controller. + + + Creates an instance of for the controller. + The created . + + + Represents an interface that can skip request validation. + + + Retrieves the value of the object that is associated with the specified key. + The value of the object for the specified key. + The key. + true if validation should be skipped; otherwise, false. + + + Defines the methods that are required for a value provider in ASP.NET MVC. + + + Determines whether the collection contains the specified prefix. + true if the collection contains the specified prefix; otherwise, false. + The prefix to search for. + + + Retrieves a value object using the specified key. + The value object for the specified key, or null if the key is not found. + The key of the value object to retrieve. + + + Defines the methods that are required for a view. + + + Renders the specified view context by using the specified the writer object. + The view context. + The writer object. + + + Defines the methods that are required for a view data dictionary. + + + Gets or sets the view data dictionary. + The view data dictionary. + + + Defines the methods that are required for a view engine. + + + Finds the specified partial view by using the specified controller context. + The partial view. + The controller context. + The name of the partial view. + true to specify that the view engine returns the cached view, if a cached view exists; otherwise, false. + + + Finds the specified view by using the specified controller context. + The page view. + The controller context. + The name of the view. + The name of the master. + true to specify that the view engine returns the cached view, if a cached view exists; otherwise, false. + + + Releases the specified view by using the specified controller context. + The controller context. + The view. + + + Defines the methods that are required in order to cache view locations in memory. + + + Gets the view location by using the specified HTTP context and the cache key. + The view location. + The HTTP context. + The cache key. + + + Inserts the specified view location into the cache by using the specified HTTP context and the cache key. + The HTTP context. + The cache key. + The virtual path. + + + Provides fine-grained control over how view pages are created using dependency injection. + + + Provides fine-grained control over how view pages are created using dependency injection. + The created view page. + The controller context. + The type of the controller. + + + Sends JavaScript content to the response. + + + Initializes a new instance of the class. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context within which the result is executed. + The parameter is null. + + + Gets or sets the script. + The script. + + + The JQuery Form Value provider is used to handle JQuery formatted data in request Forms. + + + Constructs a new instance of the JQuery form ValueProvider + The context on which the ValueProvider operates. + + + Provides the necessary ValueProvider to handle JQuery Form data. + + + Constructs a new instance of the factory which provides JQuery form ValueProviders. + + + Returns the suitable ValueProvider. + The context on which the ValueProvider should operate. + + + Specifies whether HTTP GET requests from the client are allowed. + + + HTTP GET requests from the client are allowed. + + + HTTP GET requests from the client are not allowed. + + + Represents a class that is used to send JSON-formatted content to the response. + + + Initializes a new instance of the class. + + + Gets or sets the content encoding. + The content encoding. + + + Gets or sets the type of the content. + The type of the content. + + + Gets or sets the data. + The data. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context within which the result is executed. + The parameter is null. + + + Gets or sets a value that indicates whether HTTP GET requests from the client are allowed. + A value that indicates whether HTTP GET requests from the client are allowed. + + + Gets or sets the maximum length of data. + The maximum length of data. + + + Gets or sets the recursion limit. + The recursion limit. + + + Enables action methods to send and receive JSON-formatted text and to model-bind the JSON text to parameters of action methods. + + + Initializes a new instance of the class. + + + Returns a JSON value-provider object for the specified controller context. + A JSON value-provider object for the specified controller context. + The controller context. + + + Maps a browser request to a LINQ object. + + + Initializes a new instance of the class. + + + Binds the model by using the specified controller context and binding context. + The bound data object. If the model cannot be bound, this method returns null.Implements. + The context within which the controller operates. The context information includes the controller, HTTP content, request context, and route data. + The context within which the model is bound. The context includes information such as the model object, model name, model type, property filter, and value provider. + + + Provides an adapter for the MaxLengthAttribute attribute. + + + Initializes a new instance of the MaxLengthAttribute class. + The model metadata. + The controller context. + The MaxLength attribute. + + + Gets a list of client validation rules for a max length check. + A list of client validation rules for the check. + + + Provides an adapter for the MinLengthAttribute attribute. + + + Initializes a new instance of the MinLenghtAttribute class. + The model metadata. + The controller context. + The minimum length attribute. + + + Gets a list of client validation rules for the minimum length check. + A list of client validation rules for a check. + + + Represents an attribute that is used to associate a model type to a model-builder type. + + + Initializes a new instance of the class. + The type of the binder. + The parameter is null. + + + Gets or sets the type of the binder. + The type of the binder. + + + Retrieves an instance of the model binder. + A reference to an object that implements the interface. + An error occurred while an instance of the model binder was being created. + + + Represents a class that contains all model binders for the application, listed by binder type. + + + Initializes a new instance of the class. + + + Adds the specified item to the model binder dictionary. + The object to add to the instance. + The object is read-only. + + + Adds the specified item to the model binder dictionary using the specified key. + The key of the element to add. + The value of the element to add. + The object is read-only. + + is null. + An element that has the same key already exists in the object. + + + Removes all items from the model binder dictionary. + The object is read-only. + + + Determines whether the model binder dictionary contains a specified value. + true if is found in the model binder dictionary; otherwise, false. + The object to locate in the object. + + + Determines whether the model binder dictionary contains an element that has the specified key. + true if the model binder dictionary contains an element that has the specified key; otherwise, false. + The key to locate in the object. + + is null. + + + Copies the elements of the model binder dictionary to an array, starting at a specified index. + The one-dimensional array that is the destination of the elements copied from . The array must have zero-based indexing. + The zero-based index in at which copying starts. + + is null. + + is less than 0. + + is multidimensional.-or- is equal to or greater than the length of .-or- The number of elements in the source object is greater than the available space from to the end of the destination array. -or- Type cannot be cast automatically to the type of the destination array. + + + Gets the number of elements in the model binder dictionary. + The number of elements in the model binder dictionary. + + + Gets or sets the default model binder. + The default model binder. + + + Retrieves the model binder for the specified type. + The model binder. + The type of the model to retrieve. + The parameter is null. + + + Retrieves the model binder for the specified type or retrieves the default model binder. + The model binder. + The type of the model to retrieve. + true to retrieve the default model binder. + The parameter is null. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Gets a value that indicates whether the model binder dictionary is read-only. + true if the model binder dictionary is read-only; otherwise, false. + + + Gets or sets the specified key in an object that implements the interface. + The key for the specified item. + + + Gets a collection that contains the keys in the model binder dictionary. + A collection that contains the keys in the model binder dictionary. + + + Removes the first occurrence of the specified element from the model binder dictionary. + true if was successfully removed from the model binder dictionary; otherwise, false. This method also returns false if is not found in the model binder dictionary. + The object to remove from the object. + The object is read-only. + + + Removes the element that has the specified key from the model binder dictionary. + true if the element is successfully removed; otherwise, false. This method also returns false if was not found in the model binder dictionary. + The key of the element to remove. + The object is read-only. + + is null. + + + Returns an enumerator that can be used to iterate through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the value that is associated with the specified key. + true if the object that implements contains an element that has the specified key; otherwise, false. + The key of the value to get. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + + Gets a collection that contains the values in the model binder dictionary. + A collection that contains the values in the model binder dictionary. + + + No content here will be updated; please do not add material here. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using a list of model binder providers. + A list of model binder providers. + + + Removes all elements from the collection. + + + Returns a model binder of the specified type. + A model binder of the specified type. + The type of the model binder. + + + Inserts a model binder provider into the ModelBinderProviderCollection at the specified index. + The index. + The model binder provider. + + + Removes the element at the specified index of the collection. + The zero-based index of the element to remove. + + + Replaces the model binder provider element at the specified index. + The index. + The model binder provider. + + + Provides a container for model binder providers. + + + Provides a registration point for model binder providers for applications that do not use dependency injection. + The model binder provider collection. + + + Provides global access to the model binders for the application. + + + Gets the model binders for the application. + The model binders for the application. + + + Provides the context in which a model binder functions. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the binding context. + The binding context. + + + Gets or sets a value that indicates whether the binder should use an empty prefix. + true if the binder should use an empty prefix; otherwise, false. + + + Gets or sets the model. + The model. + + + Gets or sets the model metadata. + The model metadata. + + + Gets or sets the name of the model. + The name of the model. + + + Gets or sets the state of the model. + The state of the model. + + + Gets or sets the type of the model. + The type of the model. + + + Gets or sets the property filter. + The property filter. + + + Gets the property metadata. + The property metadata. + + + Gets or sets the value provider. + The value provider. + + + Represents an error that occurs during model binding. + + + Initializes a new instance of the class by using the specified exception. + The exception. + The parameter is null. + + + Initializes a new instance of the class by using the specified exception and error message. + The exception. + The error message. + The parameter is null. + + + Initializes a new instance of the class by using the specified error message. + The error message. + + + Gets or sets the error message. + The error message. + + + Gets or sets the exception object. + The exception object. + + + A collection of instances. + + + Initializes a new instance of the class. + + + Adds the specified object to the model-error collection. + The exception. + + + Adds the specified error message to the model-error collection. + The error message. + + + Provides a container for common metadata, for the class, and for the class for a data model. + + + Initializes a new instance of the class. + The provider. + The type of the container. + The model accessor. + The type of the model. + The name of the model. + + + Gets a dictionary that contains additional metadata about the model. + A dictionary that contains additional metadata about the model. + + + A reference to the model's container object. Will be non-null if the model represents a property. + + + Gets or sets the type of the container for the model. + The type of the container for the model. + + + Gets or sets a value that indicates whether empty strings that are posted back in forms should be converted to null. + true if empty strings that are posted back in forms should be converted to null; otherwise, false. The default value is true. + + + Gets or sets meta information about the data type. + Meta information about the data type. + + + The default order value, which is 10000. + + + Gets or sets the description of the model. + The description of the model. The default value is null. + + + Gets or sets the display format string for the model. + The display format string for the model. + + + Gets or sets the display name of the model. + The display name of the model. + + + Gets or sets the edit format string of the model. + The edit format string of the model. + + + Returns the metadata from the parameter for the model. + The metadata. + An expression that identifies the model. + The view data dictionary. + The type of the parameter. + The type of the value. + + + Gets the metadata from the expression parameter for the model. + The metadata for the model. + An expression that identifies the model. + The view data dictionary. + + + Gets the display name for the model. + The display name for the model. + + + Returns the simple description of the model. + The simple description of the model. + + + Gets a list of validators for the model. + A list of validators for the model. + The controller context. + + + Gets or sets a value that indicates whether the model object should be rendered using associated HTML elements. + true if the associated HTML elements that contains the model object should be included with the object; otherwise, false. + + + Gets or sets a value that indicates whether the model is a complex type. + A value that indicates whether the model is considered a complex type by the MVC framework. + + + Gets a value that indicates whether the type is nullable. + true if the type is nullable; otherwise, false. + + + Gets or sets a value that indicates whether the model is read-only. + true if the model is read-only; otherwise, false. + + + Gets or sets a value that indicates whether the model is required. + true if the model is required; otherwise, false. + + + Gets the value of the model. + The value of the model. For more information about , see the entry ASP.NET MVC 2 Templates, Part 2: ModelMetadata on Brad Wilson's blog + + + Gets the type of the model. + The type of the model. + + + Gets or sets the string to display for null values. + The string to display for null values. + + + Gets or sets a value that represents order of the current metadata. + The order value of the current metadata. + + + Gets a collection of model metadata objects that describe the properties of the model. + A collection of model metadata objects that describe the properties of the model. + + + Gets the property name. + The property name. + + + Gets or sets the provider. + The provider. + + + Gets or sets a value that indicates whether request validation is enabled. + true if request validation is enabled; otherwise, false. + + + Gets or sets a short display name. + The short display name. + + + Gets or sets a value that indicates whether the property should be displayed in read-only views such as list and detail views. + true if the model should be displayed in read-only views; otherwise, false. + + + Gets or sets a value that indicates whether the model should be displayed in editable views. + true if the model should be displayed in editable views; otherwise, false. + + + Gets or sets the simple display string for the model. + The simple display string for the model. + + + Gets or sets a hint that suggests what template to use for this model. + A hint that suggests what template to use for this model. + + + Gets or sets a value that can be used as a watermark. + The watermark. + + + Provides an abstract base class for a custom metadata provider. + + + When overridden in a derived class, initializes a new instance of the object that derives from the class. + + + Gets a object for each property of a model. + A object for each property of a model. + The container. + The type of the container. + + + Gets metadata for the specified property. + A object for the property. + The model accessor. + The type of the container. + The property to get the metadata model for. + + + Gets metadata for the specified model accessor and model type. + A object for the specified model accessor and model type. + The model accessor. + The type of the model. + + + Provides a container for the current instance. + + + Gets or sets the current object. + The current object. + + + Encapsulates the state of model binding to a property of an action-method argument, or to the argument itself. + + + Initializes a new instance of the class. + + + Returns a object that contains any errors that occurred during model binding. + The errors. + + + Returns a object that encapsulates the value that was being bound during model binding. + The value. + + + Represents the state of an attempt to bind a posted form to an action method, which includes validation information. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using values that are copied from the specified model-state dictionary. + The model-state dictionary. + The parameter is null. + + + Adds the specified item to the model-state dictionary. + The object to add to the model-state dictionary. + The model-state dictionary is read-only. + + + Adds an element that has the specified key and value to the model-state dictionary. + The key of the element to add. + The value of the element to add. + The model-state dictionary is read-only. + + is null. + An element that has the specified key already occurs in the model-state dictionary. + + + Adds the specified model error to the errors collection for the model-state dictionary that is associated with the specified key. + The key. + The exception. + + + Adds the specified error message to the errors collection for the model-state dictionary that is associated with the specified key. + The key. + The error message. + + + Removes all items from the model-state dictionary. + The model-state dictionary is read-only. + + + Determines whether the model-state dictionary contains a specific value. + true if is found in the model-state dictionary; otherwise, false. + The object to locate in the model-state dictionary. + + + Determines whether the model-state dictionary contains the specified key. + true if the model-state dictionary contains the specified key; otherwise, false. + The key to locate in the model-state dictionary. + + + Copies the elements of the model-state dictionary to an array, starting at a specified index. + The one-dimensional array that is the destination of the elements copied from the object. The array must have zero-based indexing. + The zero-based index in at which copying starts. + + is null. + + is less than 0. + + is multidimensional.-or- is equal to or greater than the length of .-or- The number of elements in the source collection is greater than the available space from to the end of the destination .-or- Type cannot be cast automatically to the type of the destination . + + + Gets the number of key/value pairs in the collection. + The number of key/value pairs in the collection. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Gets a value that indicates whether the collection is read-only. + true if the collection is read-only; otherwise, false. + + + Gets a value that indicates whether this instance of the model-state dictionary is valid. + true if this instance is valid; otherwise, false. + + + Determines whether there are any objects that are associated with or prefixed with the specified key. + true if the model-state dictionary contains a value that is associated with the specified key; otherwise, false. + The key. + The parameter is null. + + + Gets or sets the value that is associated with the specified key. + The model state item. + + + Gets a collection that contains the keys in the dictionary. + A collection that contains the keys of the model-state dictionary. + + + Copies the values from the specified object into this dictionary, overwriting existing values if keys are the same. + The dictionary. + + + Removes the first occurrence of the specified object from the model-state dictionary. + true if was successfully removed the model-state dictionary; otherwise, false. This method also returns false if is not found in the model-state dictionary. + The object to remove from the model-state dictionary. + The model-state dictionary is read-only. + + + Removes the element that has the specified key from the model-state dictionary. + true if the element is successfully removed; otherwise, false. This method also returns false if was not found in the model-state dictionary. + The key of the element to remove. + The model-state dictionary is read-only. + + is null. + + + Sets the value for the specified key by using the specified value provider dictionary. + The key. + The value. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Attempts to gets the value that is associated with the specified key. + true if the object that implements contains an element that has the specified key; otherwise, false. + The key of the value to get. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + + Gets a collection that contains the values in the dictionary. + A collection that contains the values of the model-state dictionary. + + + Provides a container for a validation result. + + + Initializes a new instance of the class. + + + Gets or sets the name of the member. + The name of the member. + + + Gets or sets the validation result message. + The validation result message. + + + Provides a base class for implementing validation logic. + + + Called from constructors in derived classes to initialize the class. + The metadata. + The controller context. + + + Gets the controller context. + The controller context. + + + When implemented in a derived class, returns metadata for client validation. + The metadata for client validation. + + + Returns a composite model validator for the model. + A composite model validator for the model. + The metadata. + The controller context. + + + Gets or sets a value that indicates whether a model property is required. + true if the model property is required; otherwise, false. + + + Gets the metadata for the model validator. + The metadata for the model validator. + + + When implemented in a derived class, validates the object. + A list of validation results. + The container. + + + Provides a list of validators for a model. + + + When implemented in a derived class, initializes a new instance of the class. + + + Gets a list of validators. + A list of validators. + The metadata. + The context. + + + No content here will be updated; please do not add material here. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using a list of model-validation providers. + A list of model-validation providers. + + + Removes all elements from the collection. + + + Returns the list of model validators. + The list of model validators. + The model metadata. + The controller context. + + + Inserts a model-validator provider into the collection. + The zero-based index at which item should be inserted. + The model-validator provider object to insert. + + + Removes the element at the specified index of the collection. + The zero-based index of the element to remove. + + + Replaces the model-validator provider element at the specified index. + The zero-based index of the model-validator provider element to replace. + The new value for the model-validator provider element. + + + Provides a container for the current validation provider. + + + Gets the model validator provider collection. + The model validator provider collection. + + + Represents a list of items that users can select more than one item from. + + + Initializes a new instance of the class by using the specified items to include in the list. + The items. + The parameter is null. + + + Initializes a new instance of the class by using the specified items to include in the list and the selected values. + The items. + The selected values. + The parameter is null. + + + Initializes a new instance of the MultiSelectList class by using the items to include in the list, the selected values, the disabled values. + The items used to build each of the list. + The selected values field. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + + + Initializes a new instance of the class by using the items to include in the list, the data value field, and the data text field. + The items. + The data value field. + The data text field. + The parameter is null. + + + Initializes a new instance of the class by using the items to include in the list, the data value field, the data text field, and the selected values. + The items. + The data value field. + The data text field. + The selected values. + The parameter is null. + + + Initializes a new instance of the MultiSelectList class by using the items to include in the list, the data value field, the data text field, the selected values, and the disabled values. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The selected values field. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + + + Initializes a new instance of the MultiSelectList class by using the items to include in the list, the data value field, the data text field, and the data group field. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The data group field. Used to match the Group property of the corresponding . + + + Initializes a new instance of the MultiSelectList class by using the items to include in the list, the data value field, the data text field, the data group field, and the selected values. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The data group field. Used to match the Group property of the corresponding . + The selected values field. Used to match the Selected property of the corresponding . + + + Initializes a new instance of the MultiSelectList class by using the items to include in the list, the data value field, the data text field, the data group field, the selected values, and the disabled values. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The data group field. Used to match the Group property of the corresponding . + The selected values field. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + + + Initializes a new instance of the MultiSelectList class by using the items to include in the list, the data value field, the data text field, the data group field, the selected values, the disabled values, and the disabled groups. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The data group field. Used to match the Group property of the corresponding . + The selected values field. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + The disabled groups. Used to match the Disabled property of the corresponding . + + + Gets the data group field. + + + Gets or sets the data text field. + The data text field. + + + Gets or sets the data value field. + The data value field. + + + Gets the disabled groups. + + + Gets the disabled values. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Gets or sets the items in the list. + The items in the list. + + + Gets or sets the selected values. + The selected values. + + + Returns an enumerator can be used to iterate through a collection. + An enumerator that can be used to iterate through the collection. + + + When implemented in a derived class, provides a metadata class that contains a reference to the implementation of one or more of the filter interfaces, the filter's order, and the filter's scope. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class and specifies the order of filters and whether multiple filters are allowed. + true to specify that multiple filters of the same type are allowed; otherwise, false. + The filter order. + + + Gets a value that indicates whether more than one instance of the filter attribute can be specified. + true if more than one instance of the filter attribute is allowed; otherwise, false.Implements. + + + Gets a value that indicates the order in which a filter is applied. + A value that indicates the order in which a filter is applied.Implements. + + + Selects the controller that will handle an HTTP request. + + + Initializes a new instance of the class. + The request context. + The parameter is null. + + + Adds the version header by using the specified HTTP context. + The HTTP context. + + + Called by ASP.NET to begin asynchronous request processing. + The status of the asynchronous call. + The HTTP context. + The asynchronous callback method. + The state of the asynchronous object. + + + Called by ASP.NET to begin asynchronous request processing using the base HTTP context. + The status of the asynchronous call. + The HTTP context. + The asynchronous callback method. + The state of the asynchronous object. + + + Gets or sets a value that indicates whether the MVC response header is disabled. + true if the MVC response header is disabled; otherwise, false. + + + Called by ASP.NET when asynchronous request processing has ended. + The asynchronous result. + + + Gets a value that indicates whether another request can use the instance. + true if the instance is reusable; otherwise, false. + + + Contains the header name of the ASP.NET MVC version. + + + Processes the request by using the specified HTTP request context. + The HTTP context. + + + Processes the request by using the specified base HTTP request context. + The HTTP context. + + + Gets the request context. + The request context. + + + Called by ASP.NET to begin asynchronous request processing using the base HTTP context. + The status of the asynchronous call. + The HTTP context. + The asynchronous callback method. + The data. + + + Called by ASP.NET when asynchronous request processing has ended. + The asynchronous result. + + + Gets a value that indicates whether another request can use the instance. + true if the instance is reusable; otherwise, false. + + + Enables processing of HTTP Web requests by a custom HTTP handler that implements the interface. + An object that provides references to the intrinsic server objects (for example, Request, Response, Session, and Server) that are used to service HTTP requests. + + + Represents an HTML-encoded string that should not be encoded again. + + + Initializes a new instance of the class. + The string to create. If no value is assigned, the object is created using an empty-string value. + + + Creates an HTML-encoded string using the specified text value. + An HTML-encoded string. + The value of the string to create . + + + Contains an empty HTML string. + + + Determines whether the specified string contains content or is either null or empty. + true if the string is null or empty; otherwise, false. + The string. + + + Verifies and processes an HTTP request. + + + Initializes a new instance of the class. + + + Called by ASP.NET to begin asynchronous request processing. + The status of the asynchronous call. + The HTTP context. + The asynchronous callback method. + The state. + + + Called by ASP.NET to begin asynchronous request processing. + The status of the asynchronous call. + The base HTTP context. + The asynchronous callback method. + The state. + + + Called by ASP.NET when asynchronous request processing has ended. + The asynchronous result. + + + Called by ASP.NET to begin asynchronous request processing. + The status of the asynchronous call. + The context. + The asynchronous callback method. + An object that contains data. + + + Called by ASP.NET when asynchronous request processing has ended. + The status of the asynchronous operations. + + + Verifies and processes an HTTP request. + The HTTP handler. + The HTTP context. + + + Creates an object that implements the IHttpHandler interface and passes the request context to it. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified factory controller object. + The controller factory. + + + Returns the HTTP handler by using the specified HTTP context. + The HTTP handler. + The request context. + + + Returns the session behavior. + The session behavior. + The request context. + + + Returns the HTTP handler by using the specified request context. + The HTTP handler. + The request context. + + + Creates instances of files. + + + Initializes a new instance of the class. + + + Creates a Razor host. + A Razor host. + The virtual path to the target file. + The physical path to the target file. + + + Extends a NameValueCollection object so that the collection can be copied to a specified dictionary. + + + Copies the specified collection to the specified destination. + The collection. + The destination. + + + Copies the specified collection to the specified destination, and optionally replaces previous entries. + The collection. + The destination. + true to replace previous entries; otherwise, false. + + + Represents the base class for value providers whose values come from a object. + + + Initializes a new instance of the class using the specified unvalidated collection. + A collection that contains the values that are used to initialize the provider. + A collection that contains the values that are used to initialize the provider. This collection will not be validated. + An object that contains information about the target culture. + + + Initializes Name Value collection provider. + Key value collection from request. + Unvalidated key value collection from the request. + Culture with which the values are to be used. + jQuery POST when sending complex Javascript objects to server does not encode in the way understandable by MVC. This flag should be set if the request should be normalized to MVC form - https://aspnetwebstack.codeplex.com/workitem/1564. + + + Initializes a new instance of the class. + A collection that contains the values that are used to initialize the provider. + An object that contains information about the target culture. + The parameter is null. + + + Determines whether the collection contains the specified prefix. + true if the collection contains the specified prefix; otherwise, false. + The prefix to search for. + The parameter is null. + + + Gets the keys using the specified prefix. + They keys. + The prefix. + + + Returns a value object using the specified key. + The value object for the specified key. + The key of the value object to retrieve. + The parameter is null. + + + Returns a value object using the specified key and validation directive. + The value object for the specified key. + The key. + true if validation should be skipped; otherwise, false. + + + Provides a convenience wrapper for the attribute. + + + Initializes a new instance of the class. + + + Represents an attribute that is used to indicate that a controller method is not an action method. + + + Initializes a new instance of the class. + + + Determines whether the attribute marks a method that is not an action method by using the specified controller context. + true if the attribute marks a valid non-action method; otherwise, false. + The controller context. + The method information. + + + Represents an attribute that is used to mark an action method whose output will be cached. + + + Initializes a new instance of the class. + + + Gets or sets the cache profile name. + The cache profile name. + + + Gets or sets the child action cache. + The child action cache. + + + Gets or sets the cache duration, in seconds. + The cache duration. + + + Returns a value that indicates whether a child action cache is active. + true if the child action cache is active; otherwise, false. + The controller context. + + + Gets or sets the location. + The location. + + + Gets or sets a value that indicates whether to store the cache. + true if the cache should be stored; otherwise, false. + + + This method is an implementation of and supports the ASP.NET MVC infrastructure. It is not intended to be used directly from your code. + The filter context. + + + This method is an implementation of and supports the ASP.NET MVC infrastructure. It is not intended to be used directly from your code. + The filter context. + + + This method is an implementation of and supports the ASP.NET MVC infrastructure. It is not intended to be used directly from your code. + The filter context. + + + This method is an implementation of and supports the ASP.NET MVC infrastructure. It is not intended to be used directly from your code. + The filter context. + + + Called before the action result executes. + The filter context, which encapsulates information for using . + The parameter is null. + + + Gets or sets the SQL dependency. + The SQL dependency. + + + Gets or sets the vary-by-content encoding. + The vary-by-content encoding. + + + Gets or sets the vary-by-custom value. + The vary-by-custom value. + + + Gets or sets the vary-by-header value. + The vary-by-header value. + + + Gets or sets the vary-by-param value. + The vary-by-param value. + + + Represents the attributes associated with the override filter. + + + Initializes a new instance of the class. + + + Gets the filters to override for this instance. + The filters to override for this instance. + + + Represents the attributes associated with the authentication. + + + Initializes a new instance of the class. + + + Gets the filters to override for this instance. + The filters to override for this instance. + + + Represents the attributes associated with the authorization. + + + Initializes a new instance of the class. + + + Gets the filters to override for this instance. + The filters to override for this instance. + + + Represents the attributes associated with the exception filter. + + + Initializes a new instance of the class. + + + Gets the filters to override for this instance. + The filters to override for this instance. + + + Represents the attributes associated with the result filter. + + + Initializes a new instance of the class. + + + Gets the filters to override for this instance. + The filters to override for this instance. + + + Encapsulates information for binding action-method parameters to a data model. + + + Initializes a new instance of the class. + + + Gets the model binder. + The model binder. + + + Gets a comma-delimited list of property names for which binding is disabled. + The exclude list. + + + Gets a comma-delimited list of property names for which binding is enabled. + The include list. + + + Gets the prefix to use when the MVC framework binds a value to an action parameter or to a model property. + The prefix. + + + Contains information that describes a parameter. + + + Initializes a new instance of the class. + + + Gets the action descriptor. + The action descriptor. + + + Gets the binding information. + The binding information. + + + Gets the default value of the parameter. + The default value of the parameter. + + + Returns an array of custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Returns an array of custom attributes that are defined for this member, identified by type. + An array of custom attributes, or an empty array if no custom attributes exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + The parameter is null. + + + Indicates whether one or more instances of a custom attribute type are defined for this member. + true if the custom attribute type is defined for this member; otherwise, false. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The parameter is null. + + + Gets the name of the parameter. + The name of the parameter. + + + Gets the type of the parameter. + The type of the parameter. + + + Represents a base class that is used to send a partial view to the response. + + + Initializes a new instance of the class. + + + Returns the object that is used to render the view. + The view engine result. + The controller context. + An error occurred while the method was attempting to find the view. + + + Provides a registration point for ASP.NET Razor pre-application start code. + + + Registers Razor pre-application start code. + + + Represents a value provider for query strings that are contained in a object. + + + Initializes a new instance of the class. + An object that encapsulates information about the current HTTP request. + + + Represents a class that is responsible for creating a new instance of a query-string value-provider object. + + + Initializes a new instance of the class. + + + Returns a value-provider object for the specified controller context. + A query-string value-provider object. + An object that encapsulates information about the current HTTP request. + The parameter is null. + + + Provides an adapter for the attribute. + + + Initializes a new instance of the class. + The model metadata. + The controller context. + The range attribute. + + + Gets a list of client validation rules for a range check. + A list of client validation rules for a range check. + + + Represents the class used to create views that have Razor syntax. + + + Initializes a new instance of the class. + The controller context. + The view path. + The layout or master page. + A value that indicates whether view start files should be executed before the view. + The set of extensions that will be used when looking up view start files. + + + Initializes a new instance of the class using the view page activator. + The controller context. + The view path. + The layout or master page. + A value that indicates whether view start files should be executed before the view. + The set of extensions that will be used when looking up view start files. + The view page activator. + + + Gets the layout or master page. + The layout or master page. + + + Renders the specified view context by using the specified writer and instance. + The view context. + The writer that is used to render the view to the response. + The instance. + + + Gets a value that indicates whether view start files should be executed before the view. + A value that indicates whether view start files should be executed before the view. + + + Gets or sets the set of file extensions that will be used when looking up view start files. + The set of file extensions that will be used when looking up view start files. + + + Represents a view engine that is used to render a Web page that uses the ASP.NET Razor syntax. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the view page activator. + The view page activator. + + + Creates a partial view using the specified controller context and partial path. + The partial view. + The controller context. + The path to the partial view. + + + Creates a view by using the specified controller context and the paths of the view and master view. + The view. + The controller context. + The path to the view. + The path to the master view. + + + Controls the processing of application actions by redirecting to a specified URI. + + + Initializes a new instance of the class. + The target URL. + The parameter is null. + + + Initializes a new instance of the class using the specified URL and permanent-redirection flag. + The URL. + A value that indicates whether the redirection should be permanent. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context within which the result is executed. + The parameter is null. + + + Gets a value that indicates whether the redirection should be permanent. + true if the redirection should be permanent; otherwise, false. + + + Gets or sets the target URL. + The target URL. + + + Represents a result that performs a redirection by using the specified route values dictionary. + + + Initializes a new instance of the class by using the specified route name and route values. + The name of the route. + The route values. + + + Initializes a new instance of the class by using the specified route name, route values, and permanent-redirection flag. + The name of the route. + The route values. + A value that indicates whether the redirection should be permanent. + + + Initializes a new instance of the class by using the specified route values. + The route values. + + + Enables processing of the result of an action method by a custom type that inherits from the class. + The context within which the result is executed. + The parameter is null. + + + Gets a value that indicates whether the redirection should be permanent. + true if the redirection should be permanent; otherwise, false. + + + Gets or sets the name of the route. + The name of the route. + + + Gets or sets the route values. + The route values. + + + Contains information that describes a reflected action method. + + + Initializes a new instance of the class. + The action-method information. + The name of the action. + The controller descriptor. + Either the or parameter is null. + The parameter is null or empty. + + + Gets the name of the action. + The name of the action. + + + Gets the controller descriptor. + The controller descriptor. + + + Executes the specified controller context by using the specified action-method parameters. + The action return value. + The controller context. + The parameters. + The or parameter is null. + + + Returns an array of custom attributes defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Returns an array of custom attributes defined for this member, identified by type. + An array of custom attributes, or an empty array if no custom attributes exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Gets the filter attributes. + The filter attributes. + true to use the cache, otherwise false. + + + Retrieves the parameters of the action method. + The parameters of the action method. + + + Retrieves the action selectors. + The action selectors. + + + Indicates whether one or more instances of a custom attribute type are defined for this member. + true if the custom attribute type is defined for this member; otherwise, false. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Gets or sets the action-method information. + The action-method information. + + + Gets the unique ID for the reflected action descriptor using lazy initialization. + The unique ID. + + + Contains information that describes a reflected controller. + + + Initializes a new instance of the class. + The type of the controller. + The parameter is null. + + + Gets the type of the controller. + The type of the controller. + + + Finds the specified action for the specified controller context. + The information about the action. + The controller context. + The name of the action. + The parameter is null. + The parameter is null or empty. + + + Returns the list of actions for the controller. + A list of action descriptors for the controller. + + + Returns an array of custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Returns an array of custom attributes that are defined for this member, identified by type. + An array of custom attributes, or an empty array if no custom attributes exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Gets the filter attributes. + The filter attributes. + true to use the cache, otherwise false. + + + Returns a value that indicates whether one or more instances of a custom attribute type are defined for this member. + true if the custom attribute type is defined for this member; otherwise, false. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Contains information that describes a reflected action-method parameter. + + + Initializes a new instance of the class. + The parameter information. + The action descriptor. + The or parameter is null. + + + Gets the action descriptor. + The action descriptor. + + + Gets the binding information. + The binding information. + + + Gets the default value of the reflected parameter. + The default value of the reflected parameter. + + + Returns an array of custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Returns an array of custom attributes that are defined for this member, identified by type. + An array of custom attributes, or an empty array if no custom attributes exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + The custom attribute type cannot be loaded. + There is more than one attribute of type defined for this member. + + + Returns a value that indicates whether one or more instances of a custom attribute type are defined for this member. + true if the custom attribute type is defined for this member; otherwise, false. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Gets or sets the parameter information. + The parameter information. + + + Gets the name of the parameter. + The name of the parameter. + + + Gets the type of the parameter. + The type of the parameter. + + + Provides an adapter for the attribute. + + + Initializes a new instance of the class. + The model metadata. + The controller context. + The regular expression attribute. + + + Gets a list of regular-expression client validation rules. + A list of regular-expression client validation rules. + + + Provides an attribute that uses the jQuery validation plug-in remote validator. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified route name. + The route name. + + + Initializes a new instance of the class using the specified action-method name and controller name. + The name of the action method. + The name of the controller. + + + Initializes a new instance of the class using the specified action-method name, controller name, and area name. + The name of the action method. + The name of the controller. + The name of the area. + + + Initializes a new instance of the class. + The route name. + The name of the controller. + Find the controller in the root if . Otherwise look in the current area. + + + Gets or sets the additional fields that are required for validation. + The additional fields that are required for validation. + + + Returns a comma-delimited string of validation field names. + A comma-delimited string of validation field names. + The name of the validation property. + + + Formats the error message that is displayed when validation fails. + A formatted error message. + A name to display with the error message. + + + Formats the property for client validation by prepending an asterisk (*) and a dot. + The string "*." Is prepended to the property. + The property. + + + Gets a list of client validation rules for the property. + A list of remote client validation rules for the property. + The model metadata. + The controller context. + + + Gets the URL for the remote validation call. + The URL for the remote validation call. + The controller context. + + + Gets or sets the HTTP method used for remote validation. + The HTTP method used for remote validation. The default value is "Get". + + + This method always returns true. + true + The validation target. + + + Gets the route data dictionary. + The route data dictionary. + + + Gets or sets the route name. + The route name. + + + Gets the route collection from the route table. + The route collection from the route table. + + + Provides an adapter for the attribute. + + + Initializes a new instance of the class. + The model metadata. + The controller context. + The required attribute. + + + Gets a list of required-value client validation rules. + A list of required-value client validation rules. + + + Represents an attribute that forces an unsecured HTTP request to be re-sent over HTTPS. + + + Initializes a new instance of the class. + + + Handles unsecured HTTP requests that are sent to the action method. + An object that encapsulates information that is required in order to use the attribute. + The HTTP request contains an invalid transfer method override. All GET requests are considered invalid. + + + Determines whether a request is secured (HTTPS) and, if it is not, calls the method. + An object that encapsulates information that is required in order to use the attribute. + The parameter is null. + + + Provides the context for the method of the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The controller context. + The result object. + true to cancel execution; otherwise, false. + The exception object. + The parameter is null. + + + Gets or sets a value that indicates whether this instance is canceled. + true if the instance is canceled; otherwise, false. + + + Gets or sets the exception object. + The exception object. + + + Gets or sets a value that indicates whether the exception has been handled. + true if the exception has been handled; otherwise, false. + + + Gets or sets the action result. + The action result. + + + Provides the context for the method of the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified controller context and action result. + The controller context. + The action result. + The parameter is null. + + + Gets or sets a value that indicates whether this value is "cancel". + true if the value is "cancel"; otherwise, false. + + + Gets or sets the action result. + The action result. + + + Defines the area to set for all the routes defined in this controller. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The name of the area. If the value is null, an attempt will be made to infer the area name from the target controller's namespace. + + + Gets the area name to set for all the routes defined in the controller. If the value is null, an attempt will be made to infer the area name from the target controller's namespace. + The area name to set for all the routes defined in the controller. + + + Gets the URL prefix to apply to the routes of this area. Defaults to the area's name. + The URL prefix to apply to the routes of this area. + + + Place on a controller or action to expose it directly via a route. When placed on a controller, it applies to actions that do not have any System.Web.Mvc.RouteAttribute’s on them. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with the specified template. + The pattern of the route to match. + + + Gets or sets the name of the route. + The name of the route + + + Gets the order the route is applied. + The order the route is applied. + + + Creates a direct route entry. + The direct route entry. + The context to use to create the route. + + + Gets the pattern for the route to match. + The pattern to match. + + + Provides routing extensions for route collection attribute. + + + Maps the attribute-defined routes for the application. + A collection of routes. + + + Maps the attribute-defined routes for the application. + The to use for mapping routes. + + + Maps the attribute-defined routes for the application. + A collection of routes. + The to use for resolving inline constraints in route templates. + + + Maps the attribute-defined routes for the application. + The to use for resolving inline constraints in route templates. + The to use for mapping routes. + + + Extends a object for MVC routing. + + + Returns an object that contains information about the route and virtual path that are the result of generating a URL in the current area. + An object that contains information about the route and virtual path that are the result of generating a URL in the current area. + An object that contains the routes for the applications. + An object that encapsulates information about the requested route. + The name of the route to use when information about the URL path is retrieved. + An object that contains the parameters for a route. + + + Returns an object that contains information about the route and virtual path that are the result of generating a URL in the current area. + An object that contains information about the route and virtual path that are the result of generating a URL in the current area. + An object that contains the routes for the applications. + An object that encapsulates information about the requested route. + An object that contains the parameters for a route. + + + Ignores the specified URL route for the given list of available routes. + A collection of routes for the application. + The URL pattern for the route to ignore. + The or parameter is null. + + + Ignores the specified URL route for the given list of the available routes and a list of constraints. + A collection of routes for the application. + The URL pattern for the route to ignore. + A set of expressions that specify values for the parameter. + The or parameter is null. + + + Maps the specified URL route. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The URL pattern for the route. + The or parameter is null. + + + Maps the specified URL route and sets default route values. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The URL pattern for the route. + An object that contains default route values. + The or parameter is null. + + + Maps the specified URL route and sets default route values and constraints. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The URL pattern for the route. + An object that contains default route values. + A set of expressions that specify values for the parameter. + The or parameter is null. + + + Maps the specified URL route and sets default route values, constraints, and namespaces. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The URL pattern for the route. + An object that contains default route values. + A set of expressions that specify values for the parameter. + A set of namespaces for the application. + The or parameter is null. + + + Maps the specified URL route and sets default route values and namespaces. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The URL pattern for the route. + An object that contains default route values. + A set of namespaces for the application. + The or parameter is null. + + + Maps the specified URL route and sets the namespaces. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The URL pattern for the route. + A set of namespaces for the application. + The or parameter is null. + + + Represents a value provider for route data that is contained in an object that implements the interface. + + + Initializes a new instance of the class. + An object that contain information about the HTTP request. + + + Represents a factory for creating route-data value provider objects. + + + Initialized a new instance of the class. + + + Returns a value-provider object for the specified controller context. + A value-provider object. + An object that encapsulates information about the current HTTP request. + The parameter is null. + + + Annotates a controller with a route prefix that applies to all actions within the controller. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with the specified prefix. + The route prefix for the controller. + + + Gets the route prefix. + The route prefix. + + + Represents a list that lets users select one item. + + + Initializes a new instance of the class by using the specified items for the list. + The items. + + + Initializes a new instance of the class by using the specified items for the list and a selected value. + The items. + The selected value. + + + Initializes a new instance of the SelectList class by using the specified items for the list, the selected value, and the disabled values. + The items used to build each of the list. + The selected value. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + + + Initializes a new instance of the class by using the specified items for the list, the data value field, and the data text field. + The items. + The data value field. + The data text field. + + + Initializes a new instance of the class by using the specified items for the list, the data value field, the data text field, and a selected value. + The items. + The data value field. + The data text field. + The selected value. + + + Initializes a new instance of the SelectList class by using the specified items for the list, the data value field, the data text field, the selected value, and the disabled values. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The selected value. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + + + Initializes a new instance of the SelectList class by using the specified items for the list, the data value field, the data text field, the data group field, and the selected value. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The data group field. Used to match the Group property of the corresponding . + The selected value. Used to match the Selected property of the corresponding . + + + Initializes a new instance of the SelectList class by using the specified items for the list, the data value field, the data text field, the data group field, the selected value, and the disabled values. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The data group field. Used to match the Group property of the corresponding . + The selected value. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + + + Initializes a new instance of the SelectList class by using the specified items for the list, the data value field, the data text field, the data group field. the selected value, the disabled values, and the disabled groups. + The items used to build each of the list. + The data value field. Used to match the Value property of the corresponding . + The data text field. Used to match the Text property of the corresponding . + The data group field. Used to match the Group property of the corresponding . + The selected value. Used to match the Selected property of the corresponding . + The disabled values. Used to match the Disabled property of the corresponding . + The disabled groups. Used to match the Disabled property of the corresponding . + + + Gets the list value that was selected by the user. + The selected value. + + + Represents the optgroup HTML element and its attributes. In a select list, multiple groups with the same name are supported. They are compared with reference equality. + + + + Gets or sets a value that indicates whether this is disabled. + + + Represents the value of the optgroup's label. + + + Represents the selected item in an instance of the class. + + + Initializes a new instance of the class. + + + Gets or sets a value that indicates whether this is disabled. + + + Represents the optgroup HTML element this item is wrapped into. In a select list, multiple groups with the same name are supported. They are compared with reference equality. + + + Gets or sets a value that indicates whether this is selected. + true if the item is selected; otherwise, false. + + + Gets or sets the text of the selected item. + The text. + + + Gets or sets the value of the selected item. + The value. + + + Specifies the session state of the controller. + + + Initializes a new instance of the class + The type of the session state. + + + Get the session state behavior for the controller. + The session state behavior for the controller. + + + Provides session-state data to the current object. + + + Initializes a new instance of the class. + + + Loads the temporary data by using the specified controller context. + The temporary data. + The controller context. + An error occurred when the session context was being retrieved. + + + Saves the specified values in the temporary data dictionary by using the specified controller context. + The controller context. + The values. + An error occurred the session context was being retrieved. + + + Provides an adapter for the attribute. + + + Initializes a new instance of the class. + The model metadata. + The controller context. + The string-length attribute. + + + Gets a list of string-length client validation rules. + A list of string-length client validation rules. + + + Represents a set of data that persists only from one request to the next. + + + Initializes a new instance of the class. + + + Adds an element that has the specified key and value to the object. + The key of the element to add. + The value of the element to add. + The object is read-only. + + is null. + An element that has the same key already exists in the object. + + + Removes all items from the instance. + The object is read-only. + + + Determines whether the instance contains an element that has the specified key. + true if the instance contains an element that has the specified key; otherwise, false. + The key to locate in the instance. + + is null. + + + Determines whether the dictionary contains the specified value. + true if the dictionary contains the specified value; otherwise, false. + The value. + + + Gets the number of elements in the object. + The number of elements in the object. + + + Gets the enumerator. + The enumerator. + + + Gets or sets the object that has the specified key. + The object that has the specified key. + + + Marks all keys in the dictionary for retention. + + + Marks the specified key in the dictionary for retention. + The key to retain in the dictionary. + + + Gets an object that contains the keys of elements in the object. + The keys of the elements in the object. + + + Loads the specified controller context by using the specified data provider. + The controller context. + The temporary data provider. + + + Returns an object that contains the element that is associated with the specified key, without marking the key for deletion. + An object that contains the element that is associated with the specified key. + The key of the element to return. + + + Removes the element that has the specified key from the object. + true if the element was removed successfully; otherwise, false. This method also returns false if was not found in the . instance. + The key of the element to remove. + The object is read-only. + + is null. + + + Saves the specified controller context by using the specified data provider. + The controller context. + The temporary data provider. + + + Adds the specified key/value pair to the dictionary. + The key/value pair. + + + Determines whether a sequence contains a specified element by using the default equality comparer. + true if the dictionary contains the specified key/value pair; otherwise, false. + The key/value pair to search for. + + + Copies a key/value pair to the specified array at the specified index. + The target array. + The index. + + + Gets a value that indicates whether the dictionary is read-only. + true if the dictionary is read-only; otherwise, false. + + + Deletes the specified key/value pair from the dictionary. + true if the key/value pair was removed successfully; otherwise, false. + The key/value pair. + + + Returns an enumerator that can be used to iterate through a collection. + An object that can be used to iterate through the collection. + + + Gets the value of the element that has the specified key. + true if the object that implements contains an element that has the specified key; otherwise, false. + The key of the value to get. + When this method returns, the value that is associated with the specified key, if the key is found; otherwise, the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + + Gets the object that contains the values in the object. + The values of the elements in the object that implements . + + + Encapsulates information about the current template context. + + + Initializes a new instance of the class. + + + Gets or sets the formatted model value. + The formatted model value. + + + Retrieves the full DOM ID of a field using the specified HTML name attribute. + The full DOM ID. + The value of the HTML name attribute. + + + Retrieves the fully qualified name (including a prefix) for a field using the specified HTML name attribute. + The prefixed name of the field. + The value of the HTML name attribute. + + + Gets or sets the HTML field prefix. + The HTML field prefix. + + + Contains the number of objects that were visited by the user. + The number of objects. + + + Determines whether the template has been visited by the user. + true if the template has been visited by the user; otherwise, false. + An object that encapsulates information that describes the model. + + + Contains methods to build URLs for ASP.NET MVC within an application. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified request context. + An object that contains information about the current request and about the route that it matched. + + + Initializes a new instance of the class using the specified request context and route collection. + An object that contains information about the current request and about the route that it matched. + A collection of routes. + The or the parameter is null. + + + Generates a string to a fully qualified URL to an action method. + A string to a fully qualified URL to an action method. + + + Generates a fully qualified URL to an action method by using the specified action name. + The fully qualified URL to an action method. + The name of the action method. + + + Generates a fully qualified URL to an action method by using the specified action name and route values. + The fully qualified URL to an action method. + The name of the action method. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + + + Generates a fully qualified URL to an action method by using the specified action name and controller name. + The fully qualified URL to an action method. + The name of the action method. + The name of the controller. + + + Generates a fully qualified URL to an action method by using the specified action name, controller name, and route values. + The fully qualified URL to an action method. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + + + Generates a fully qualified URL to an action method by using the specified action name, controller name, route values, and protocol to use. + The fully qualified URL to an action method. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + The protocol for the URL, such as "http" or "https". + + + Generates a fully qualified URL to an action method by using the specified action name, controller name, and route values. + The fully qualified URL to an action method. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + + + Generates a fully qualified URL for an action method by using the specified action name, controller name, route values, and protocol to use. + The fully qualified URL to an action method. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + The protocol for the URL, such as "http" or "https". + + + Generates a fully qualified URL for an action method by using the specified action name, controller name, route values, protocol to use and host name. + The fully qualified URL to an action method. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + + + Generates a fully qualified URL to an action method for the specified action name and route values. + The fully qualified URL to an action method. + The name of the action method. + An object that contains the parameters for a route. + + + Converts a virtual (relative) path to an application absolute path. + The application absolute path. + The virtual path of the content. + + + Encodes special characters in a URL string into character-entity equivalents. + An encoded URL string. + The text to encode. + + + Returns a string that contains a content URL. + A string that contains a content URL. + The content path. + The http context. + + + Returns a string that contains a URL. + A string that contains a URL. + The route name. + The action name. + The controller name. + The HTTP protocol. + The host name. + The fragment. + The route values. + The route collection. + The request context. + true to include implicit MVC values; otherwise false. + + + Returns a string that contains a URL. + A string that contains a URL. + The route name. + The action name. + The controller name. + The route values. + The route collection. + The request context. + true to include implicit MVC values; otherwise false. + + + Generates a fully qualified URL for the specified route values. + A fully qualified URL for the specified route values. + The route name. + The route values. + + + Generates a fully qualified URL for the specified route values. + A fully qualified URL for the specified route values. + The route name. + The route values. + + + Returns a value that indicates whether the URL is local. + true if the URL is local; otherwise, false. + The URL. + + + Gets information about an HTTP request that matches a defined route. + The request context. + + + Gets a collection that contains the routes that are registered for the application. + The route collection. + + + Generates a fully qualified URL for the specified route values. + The fully qualified URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + + + Generates a fully qualified URL for the specified route name. + The fully qualified URL. + The name of the route that is used to generate URL. + + + Generates a fully qualified URL for the specified route values by using a route name. + The fully qualified URL. + The name of the route that is used to generate URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + + + Generates a fully qualified URL for the specified route values by using a route name and the protocol to use. + The fully qualified URL. + The name of the route that is used to generate the URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + The protocol for the URL, such as "http" or "https". + + + Generates a fully qualified URL for the specified route values by using a route name. + The fully qualified URL. + The name of the route that is used to generate URL. + An object that contains the parameters for a route. + + + Generates a fully qualified URL for the specified route values by using the specified route name, protocol to use, and host name. + The fully qualified URL. + The name of the route that is used to generate URL. + An object that contains the parameters for a route. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + + + Generates a fully qualified URL for the specified route values. + The fully qualified URL. + An object that contains the parameters for a route. + + + Represents an optional parameter that is used by the class during routing. + + + Contains the read-only value for the optional parameter. + + + Returns an empty string. This method supports the ASP.NET MVC infrastructure and is not intended to be used directly from your code. + An empty string. + + + Provides an object adapter that can be validated. + + + Initializes a new instance of the class. + The model metadata. + The controller context. + + + Validates the specified object. + A list of validation results. + The container. + + + Represents an attribute that is used to prevent forgery of a request. + + + Initializes a new instance of the class. + + + Called when authorization is required. + The filter context. + The parameter is null. + + + Gets or sets the salt string. + The salt string. + + + Represents an attribute that is used to mark action methods whose input must be validated. + + + Initializes a new instance of the class. + true to enable validation. + + + Gets or sets a value that indicates whether to enable validation. + true if validation is enabled; otherwise, false. + + + Called when authorization is required. + The filter context. + The parameter is null. + + + Represents the collection of value-provider objects for the application. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class and registers the specified value providers. + The list of value providers to register. + + + Determines whether the collection contains the specified prefix. + true if the collection contains the specified prefix; otherwise, false. + The prefix to search for. + + + Gets the keys using the specified prefix. + They keys. + The prefix. + + + Returns a value object using the specified key. + The value object for the specified key. + The key of the value object to retrieve. + + + Returns a value object using the specified key and skip-validation parameter. + The value object for the specified key. + The key of the value object to retrieve. + true to specify that validation should be skipped; otherwise, false. + + + Inserts the specified value-provider object into the collection at the specified index location. + The zero-based index location at which to insert the value provider into the collection. + The value-provider object to insert. + The parameter is null. + + + Replaces the value provider at the specified index location with a new value provider. + The zero-based index of the element to replace. + The new value for the element at the specified index. + The parameter is null. + + + Note: This API is now obsolete.Represents a dictionary of value providers for the application. + + + Initializes a new instance of the class. + The controller context. + + + Adds the specified item to the collection of value providers. + The object to add to the object. + The object is read-only. + + + Adds an element that has the specified key and value to the collection of value providers. + The key of the element to add. + The value of the element to add. + The object is read-only. + + is null. + An element that has the specified key already exists in the object. + + + Adds an element that has the specified key and value to the collection of value providers. + The key of the element to add. + The value of the element to add. + The object is read-only. + + is null. + An element that has the specified key already exists in the object. + + + Removes all items from the collection of value providers. + The object is read-only. + + + Determines whether the collection of value providers contains the specified item. + true if is found in the collection of value providers; otherwise, false. + The object to locate in the instance. + + + Determines whether the collection of value providers contains an element that has the specified key. + true if the collection of value providers contains an element that has the key; otherwise, false. + The key of the element to find in the instance. + + is null. + + + Gets or sets the controller context. + The controller context. + + + Copies the elements of the collection to an array, starting at the specified index. + The one-dimensional array that is the destination of the elements copied from the object. The array must have zero-based indexing. + The zero-based index in at which copying starts. + + is null. + + is less than 0. + + is multidimensional.-or- is equal to or greater than the length of .-or-The number of elements in the source collection is greater than the available space from to the end of the destination .-or-Type cannot be cast automatically to the type of the destination array. + + + Gets the number of elements in the collection. + The number of elements in the collection. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Gets a value that indicates whether the collection is read-only. + true if the collection is read-only; otherwise, false. + + + Gets or sets the object that has the specified key. + The object. + + + Gets a collection that contains the keys of the instance. + A collection that contains the keys of the object that implements the interface. + + + Removes the first occurrence of the specified item from the collection of value providers. + true if was successfully removed from the collection; otherwise, false. This method also returns false if is not found in the collection. + The object to remove from the instance. + The object is read-only. + + + Removes the element that has the specified key from the collection of value providers. + true if the element was successfully removed; otherwise, false. This method also returns false if was not found in the collection. + The key of the element to remove. + The object is read-only. + + is null. + + + Returns an enumerator that can be used to iterate through a collection. + An enumerator that can be used to iterate through the collection. + + + Determines whether the collection contains the specified prefix. + true if the collection contains the specified prefix; otherwise, false. + The prefix to search for. + + + Returns a value object using the specified key. + The value object for the specified key. + The key of the value object to return. + + + Gets the value of the element that has the specified key. + true if the object that implements contains an element that has the specified key; otherwise, false. + The key of the element to get. + When this method returns, the value that is associated with the specified key, if the key is found; otherwise, the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + + Gets a collection that contains the values in the object. + A collection of the values in the object that implements the interface. + + + Represents a container for value-provider factory objects. + + + Gets the collection of value-provider factories for the application. + The collection of value-provider factory objects. + + + Represents a factory for creating value-provider objects. + + + Initializes a new instance of the class. + + + Returns a value-provider object for the specified controller context. + A value-provider object. + An object that encapsulates information about the current HTTP request. + + + Represents the collection of value-provider factories for the application. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified list of value-provider factories. + A list of value-provider factories to initialize the collection with. + + + Removes all elements from the collection. + + + Returns the value-provider factory for the specified controller context. + The value-provider factory object for the specified controller context. + An object that encapsulates information about the current HTTP request. + + + Inserts the specified value-provider factory object at the specified index location. + The zero-based index location at which to insert the value provider into the collection. + The value-provider factory object to insert. + The parameter is null. + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than zero.-or- is equal to or greater than + + + Sets the specified value-provider factory object at the given index location. + The zero-based index location at which to insert the value provider into the collection. + The value-provider factory object to set. + The parameter is null. + + + Represents the result of binding a value (such as from a form post or query string) to an action-method argument property, or to the argument itself. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified raw value, attempted value, and culture information. + The raw value. + The attempted value. + The culture. + + + Gets or sets the raw value that is converted to a string for display. + The raw value. + + + Converts the value that is encapsulated by this result to the specified type. + The converted value. + The target type. + The parameter is null. + + + Converts the value that is encapsulated by this result to the specified type by using the specified culture information. + The converted value. + The target type. + The culture to use in the conversion. + The parameter is null. + + + Gets or sets the culture. + The culture. + + + Gets or set the raw value that is supplied by the value provider. + The raw value. + + + Encapsulates information that is related to rendering a view. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified controller context, view, view data dictionary, temporary data dictionary, and text writer. + Encapsulates information about the HTTP request. + The view to render. + The dictionary that contains the data that is required in order to render the view. + The dictionary that contains temporary data for the view. + The text writer object that is used to write HTML output. + One of the parameters is null. + + + Gets or sets a value that indicates whether client-side validation is enabled. + true if client-side validation is enabled; otherwise, false. + + + Gets or sets an object that encapsulates information that is required in order to validate and process the input data from an HTML form. + An object that encapsulates information that is required in order to validate and process the input data from an HTML form. + + + Writes the client validation information to the HTTP response. + + + Gets data that is associated with this request and that is available for only one request. + The temporary data. + + + Gets or sets a value that indicates whether unobtrusive JavaScript is enabled. + true if unobtrusive JavaScript is enabled; otherwise, false. + + + Element name used to wrap a top-level message generated by and other overloads. + + + Element name used to wrap a top-level message generated by and other overloads. + + + Gets an object that implements the interface to render in the browser. + The view. + + + Gets the dynamic view data dictionary. + The dynamic view data dictionary. + + + Gets the view data that is passed to the view. + The view data. + + + Gets or sets the text writer object that is used to write HTML output. + The object that is used to write the HTML output. + + + Represents a container that is used to pass data between a controller and a view. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified model. + The model. + + + Initializes a new instance of the class by using the specified dictionary. + The dictionary. + The parameter is null. + + + Adds the specified item to the collection. + The object to add to the collection. + The collection is read-only. + + + Adds an element to the collection using the specified key and value . + The key of the element to add. + The value of the element to add. + The object is read-only. + + is null. + An element with the same key already exists in the object. + + + Removes all items from the collection. + The object is read-only. + + + Determines whether the collection contains the specified item. + true if is found in the collection; otherwise, false. + The object to locate in the collection. + + + Determines whether the collection contains an element that has the specified key. + true if the collection contains an element that has the specified key; otherwise, false. + The key of the element to locate in the collection. + + is null. + + + Copies the elements of the collection to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + is null. + + is less than 0. + + is multidimensional.-or- is equal to or greater than the length of .-or- The number of elements in the source collection is greater than the available space from to the end of the destination .-or- Type cannot be cast automatically to the type of the destination . + + + Gets the number of elements in the collection. + The number of elements in the collection. + + + Evaluates the specified expression. + The results of the evaluation. + The expression. + The parameter is null or empty. + + + Evaluates the specified expression by using the specified format. + The results of the evaluation. + The expression. + The format. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns information about the view data as defined by the parameter. + An object that contains the view data information that is defined by the parameter. + A set of key/value pairs that define the view-data information to return. + The parameter is either null or empty. + + + Gets a value that indicates whether the collection is read-only. + true if the collection is read-only; otherwise, false. + + + Gets or sets the item that is associated with the specified key. + The value of the selected item. + + + Gets a collection that contains the keys of this dictionary. + A collection that contains the keys of the object that implements . + + + Gets or sets the model that is associated with the view data. + The model that is associated with the view data. + + + Gets or sets information about the model. + Information about the model. + + + Gets the state of the model. + The state of the model. + + + Removes the first occurrence of a specified object from the collection. + true if was successfully removed from the collection; otherwise, false. This method also returns false if is not found in the collection. + The object to remove from the collection. + The collection is read-only. + + + Removes the element from the collection using the specified key. + true if the element is successfully removed; otherwise, false. This method also returns false if was not found in the original collection. + The key of the element to remove. + The collection is read-only. + + is null. + + + Sets the data model to use for the view. + The data model to use for the view. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Gets or sets an object that encapsulates information about the current template context. + An object that contains information about the current template. + + + Attempts to retrieve the value that is associated with the specified key. + true if the collection contains an element with the specified key; otherwise, false. + The key of the value to get. + When this method returns, the value that is associated with the specified key, if the key is found; otherwise, the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + + Gets a collection that contains the values in this dictionary. + A collection that contains the values of the object that implements . + + + Represents a container that is used to pass strongly typed data between a controller and a view. + The type of the model. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified view data dictionary. + An existing view data dictionary to copy into this instance. + + + Initializes a new instance of the class by using the specified model. + The data model to use for the view. + + + Gets or sets the model. + A reference to the data model. + + + Gets or sets information about the model. + Information about the model. + + + Sets the data model to use for the view. + The data model to use for the view. + An error occurred while the model was being set. + + + Encapsulates information about the current template content that is used to develop templates and about HTML helpers that interact with templates. + + + Initializes a new instance of the class. + + + Initializes a new instance of the T:System.Web.Mvc.ViewDataInfo class and associates a delegate for accessing the view data information. + A delegate that defines how the view data information is accessed. + + + Gets or sets the object that contains the values to be displayed by the template. + The object that contains the values to be displayed by the template. + + + Gets or sets the description of the property to be displayed by the template. + The description of the property to be displayed by the template. + + + Gets or sets the current value to be displayed by the template. + The current value to be displayed by the template. + + + Represents a collection of view engines that are available to the application. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified list of view engines. + The list that is wrapped by the new collection. + + is null. + + + Removes all elements from the . + + + Finds the specified partial view by using the specified controller context. + The partial view. + The controller context. + The name of the partial view. + The parameter is null. + The parameter is null or empty. + + + Finds the specified view by using the specified controller context and master view. + The view. + The controller context. + The name of the view. + The name of the master view. + The parameter is null. + The parameter is null or empty. + + + Inserts an element into the collection at the specified index. + The zero-based index at which item should be inserted. + The object to insert. + + is less than zero.-or- is greater than the number of items in the collection. + The parameter is null. + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than zero.-or- is equal to or greater than + + + Replaces the element at the specified index. + The zero-based index of the element to replace. + The new value for the element at the specified index. + + is less than zero.-or- is greater than the number of items in the collection. + The parameter is null. + + + Represents the result of locating a view engine. + + + Initializes a new instance of the class by using the specified searched locations. + The searched locations. + The parameter is null. + + + Initializes a new instance of the class by using the specified view and view engine. + The view. + The view engine. + The or parameter is null. + + + Gets or sets the searched locations. + The searched locations. + + + Gets or sets the view. + The view. + + + Gets or sets the view engine. + The view engine. + + + Represents a collection of view engines that are available to the application. + + + Gets the view engines. + The view engines. + + + Represents the information that is needed to build a master view page. + + + Initializes a new instance of the class. + + + Gets the AJAX script for the master page. + The AJAX script for the master page. + + + Gets the HTML for the master page. + The HTML for the master page. + + + Gets the model. + The model. + + + Gets the temporary data. + The temporary data. + + + Gets the URL. + The URL. + + + Gets the dynamic view-bag dictionary. + The dynamic view-bag dictionary. + + + Gets the view context. + The view context. + + + Gets the view data. + The view data. + + + Gets the writer that is used to render the master page. + The writer that is used to render the master page. + + + Represents the information that is required in order to build a strongly typed master view page. + The type of the model. + + + Initializes a new instance of the class. + + + Gets the AJAX script for the master page. + The AJAX script for the master page. + + + Gets the HTML for the master page. + The HTML for the master page. + + + Gets the model. + A reference to the data model. + + + Gets the view data. + The view data. + + + Represents the properties and methods that are needed to render a view as a Web Forms page. + + + Initializes a new instance of the class. + + + Gets or sets the object that is used to render HTML in Ajax scenarios. + The Ajax helper object that is associated with the view. + + + Gets or sets the object that is used to render HTML elements. + The HTML helper object that is associated with the view. + + + Initializes the , , and properties. + + + Gets or sets the path of the master view. + The path of the master view. + + + Gets the Model property of the associated object. + The Model property of the associated object. + + + Raises the event at the beginning of page initialization. + The event data. + + + Enables processing of the specified HTTP request by the ASP.NET MVC framework. + An object that encapsulates HTTP-specific information about the current HTTP request. + + + Initializes the object that receives the page content to be rendered. + The object that receives the page content. + + + Renders the view page to the response using the specified view context. + An object that encapsulates the information that is required in order to render the view, which includes the controller context, form context, the temporary data, and the view data for the associated view. + + + Note: This API is now obsolete.Sets the text writer that is used to render the view to the response. + The writer that is used to render the view to the response. + + + Sets the view data dictionary for the associated view. + A dictionary of data to pass to the view. + + + Gets the temporary data to pass to the view. + The temporary data to pass to the view. + + + Gets or sets the URL of the rendered page. + The URL of the rendered page. + + + Gets the view bag. + The view bag. + + + Gets or sets the information that is used to render the view. + The information that is used to render the view, which includes the form context, the temporary data, and the view data of the associated view. + + + Gets or sets a dictionary that contains data to pass between the controller and the view. + A dictionary that contains data to pass between the controller and the view. + + + Gets the text writer that is used to render the view to the response. + The text writer that is used to render the view to the response. + + + Represents the information that is required in order to render a strongly typed view as a Web Forms page. + The type of the model. + + + Initializes a new instance of the class. + + + Gets or sets the object that supports rendering HTML in Ajax scenarios. + The Ajax helper object that is associated with the view. + + + Gets or sets the object that provides support for rendering elements. + The HTML helper object that is associated with the view. + + + Instantiates and initializes the and properties. + + + Gets the property of the associated object. + A reference to the data model. + + + Sets the view data dictionary for the associated view. + A dictionary of data to pass to the view. + + + Gets or sets a dictionary that contains data to pass between the controller and the view. + A dictionary that contains data to pass between the controller and the view. + + + Represents a class that is used to render a view by using an instance that is returned by an object. + + + Initializes a new instance of the class. + + + Searches the registered view engines and returns the object that is used to render the view. + The object that is used to render the view. + The controller context. + An error occurred while the method was searching for the view. + + + Gets the name of the master view (such as a master page or template) to use when the view is rendered. + The name of the master view. + + + Represents a base class that is used to provide the model to the view and then render the view to the response. + + + Initializes a new instance of the class. + + + When called by the action invoker, renders the view to the response. + The context that the result is executed in. + The parameter is null. + + + Returns the object that is used to render the view. + The view engine. + The context. + + + Gets the view data model. + The view data model. + + + Gets or sets the object for this result. + The temporary data. + + + Gets or sets the object that is rendered to the response. + The view. + + + Gets the view bag. + The view bag. + + + Gets or sets the view data object for this result. + The view data. + + + Gets or sets the collection of view engines that are associated with this result. + The collection of view engines. + + + Gets or sets the name of the view to render. + The name of the view. + + + Provides an abstract class that can be used to implement a view start (master) page. + + + When implemented in a derived class, initializes a new instance of the class. + + + When implemented in a derived class, gets the HTML markup for the view start page. + The HTML markup for the view start page. + + + When implemented in a derived class, gets the URL for the view start page. + The URL for the view start page. + + + When implemented in a derived class, gets the view context for the view start page. + The view context for the view start page. + + + Provides a container for objects. + + + Initializes a new instance of the class. + + + Provides a container for objects. + The type of the model. + + + Initializes a new instance of the class. + + + Gets the formatted value. + The formatted value. + + + Represents the type of a view. + + + Initializes a new instance of the class. + + + Gets or sets the name of the type. + The name of the type. + + + Represents the information that is needed to build a user control. + + + Initializes a new instance of the class. + + + Gets the AJAX script for the view. + The AJAX script for the view. + + + Ensures that view data is added to the object of the user control if the view data exists. + + + Gets the HTML for the view. + The HTML for the view. + + + Gets the model. + The model. + + + Renders the view by using the specified view context. + The view context. + + + Sets the text writer that is used to render the view to the response. + The writer that is used to render the view to the response. + + + Sets the view-data dictionary by using the specified view data. + The view data. + + + Gets the temporary-data dictionary. + The temporary-data dictionary. + + + Gets the URL for the view. + The URL for the view. + + + Gets the view bag. + The view bag. + + + Gets or sets the view context. + The view context. + + + Gets or sets the view-data dictionary. + The view-data dictionary. + + + Gets or sets the view-data key. + The view-data key. + + + Gets the writer that is used to render the view to the response. + The writer that is used to render the view to the response. + + + Represents the information that is required in order to build a strongly typed user control. + The type of the model. + + + Initializes a new instance of the class. + + + Gets the AJAX script for the view. + The AJAX script for the view. + + + Gets the HTML for the view. + The HTML for the view. + + + Gets the model. + A reference to the data model. + + + Sets the view data for the view. + The view data. + + + Gets or sets the view data. + The view data. + + + Represents an abstract base-class implementation of the interface. + + + Initializes a new instance of the class. + + + Gets or sets the area-enabled master location formats. + The area-enabled master location formats. + + + Gets or sets the area-enabled partial-view location formats. + The area-enabled partial-view location formats. + + + Gets or sets the area-enabled view location formats. + The area-enabled view location formats. + + + Creates the specified partial view by using the specified controller context. + A reference to the partial view. + The controller context. + The partial path for the new partial view. + + + Creates the specified view by using the controller context, path of the view, and path of the master view. + A reference to the view. + The controller context. + The path of the view. + The path of the master view. + + + Gets or sets the display mode provider. + The display mode provider. + + + Returns a value that indicates whether the file is in the specified path by using the specified controller context. + true if the file is in the specified path; otherwise, false. + The controller context. + The virtual path. + + + Gets or sets the file-name extensions that are used to locate a view. + The file-name extensions that are used to locate a view. + + + Finds the specified partial view by using the specified controller context. + The partial view. + The controller context. + The name of the partial view. + true to use the cached partial view. + The parameter is null (Nothing in Visual Basic). + The parameter is null or empty. + + + Finds the specified view by using the specified controller context and master view name. + The page view. + The controller context. + The name of the view. + The name of the master view. + true to use the cached view. + The parameter is null (Nothing in Visual Basic). + The parameter is null or empty. + + + Gets or sets the master location formats. + The master location formats. + + + Gets or sets the partial-view location formats. + The partial-view location formats. + + + Releases the specified view by using the specified controller context. + The controller context. + The view to release. + + + Gets or sets the view location cache. + The view location cache. + + + Gets or sets the view location formats. + The view location formats. + + + Gets or sets the virtual path provider. + The virtual path provider. + + + Represents the information that is needed to build a Web Forms page in ASP.NET MVC. + + + Initializes a new instance of the class using the controller context and view path. + The controller context. + The view path. + + + Initializes a new instance of the class using the controller context, view path, and the path to the master page. + The controller context. + The view path. + The path to the master page. + + + Initializes a new instance of the class using the controller context, view path, the path to the master page, and a instance. + The controller context. + The view path. + The path to the master page. + An instance of the view page activator interface. + + + Gets or sets the master path. + The master path. + + + Renders the view to the response. + An object that encapsulates the information that is required in order to render the view, which includes the controller context, form context, the temporary data, and the view data for the associated view. + The text writer object that is used to write HTML output. + The view page instance. + + + Represents a view engine that is used to render a Web Forms page to the response. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified view page activator. + An instance of a class that implements the interface. + + + Creates the specified partial view by using the specified controller context. + The partial view. + The controller context. + The partial path. + + + Creates the specified view by using the specified controller context and the paths of the view and master view. + The view. + The controller context. + The view path. + The master-view path. + + + Represents the properties and methods that are needed in order to render a view that uses ASP.NET Razor syntax. + + + Initializes a new instance of the class. + + + Gets or sets the object that is used to render HTML using Ajax. + The object that is used to render HTML using Ajax. + + + Sets the view context and view data for the page. + The parent page. + + + Gets the object that is associated with the page. + The object that is associated with the page. + + + Runs the page hierarchy for the ASP.NET Razor execution pipeline. + + + Gets or sets the object that is used to render HTML elements. + The object that is used to render HTML elements. + + + Initializes the , , and classes. + + + Gets the Model property of the associated object. + The Model property of the associated object. + + + Sets the view data. + The view data. + + + Gets the temporary data to pass to the view. + The temporary data to pass to the view. + + + Gets or sets the URL of the rendered page. + The URL of the rendered page. + + + Gets the view bag. + The view bag. + + + Gets or sets the information that is used to render the view. + The information that is used to render the view, which includes the form context, the temporary data, and the view data of the associated view. + + + Gets or sets a dictionary that contains data to pass between the controller and the view. + A dictionary that contains data to pass between the controller and the view. + + + Represents the properties and methods that are needed in order to render a view that uses ASP.NET Razor syntax. + The type of the view data model. + + + Initializes a new instance of the class. + + + Gets or sets the object that is used to render HTML markup using Ajax. + The object that is used to render HTML markup using Ajax. + + + Gets or sets the object that is used to render HTML elements. + The object that is used to render HTML elements. + + + Initializes the , , and classes. + + + Gets the Model property of the associated object. + The Model property of the associated object. + + + Sets the view data. + The view data. + + + Gets or sets a dictionary that contains data to pass between the controller and the view. + A dictionary that contains data to pass between the controller and the view. + + + Represents support for ASP.NET AJAX within an ASP.NET MVC application. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + The name of the controller. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + The URL fragment name (the anchor name). + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + The name of the controller. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + The URL fragment name (the anchor name). + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + The name of the controller. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the URL to the specified action method; when the action link is clicked, the action method is invoked asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the action method. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + The name of the controller. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + The name of the controller. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + The name of the controller. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + The name of the action method that will handle the request. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element.. + + + Writes an opening <form> tag to the response. + An opening <form> tag. + The AJAX helper. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response using the specified routing information. + An opening <form> tag. + The AJAX helper. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response using the specified routing information. + An opening <form> tag. + The AJAX helper. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response using the specified routing information. + An opening <form> tag. + The AJAX helper. + The name of the route to use to obtain the form post URL. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response using the specified routing information. + An opening <form> tag. + The AJAX helper. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + + + Writes an opening <form> tag to the response using the specified routing information. + An opening <form> tag. + The AJAX helper. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML script element that contains a reference to a globalization script that defines the culture information. + A script element whose src attribute is set to the globalization script, as in the following example: <script type="text/javascript" src="/MvcApplication1/Scripts/Globalization/en-US.js"></script> + The AJAX helper object that this method extends. + + + Returns an HTML script element that contains a reference to a globalization script that defines the specified culture information. + An HTML script element whose src attribute is set to the globalization script, as in the following example:<script type="text/javascript" src="/MvcApplication1/Scripts/Globalization/en-US.js"></script> + The AJAX helper object that this method extends. + Encapsulates information about the target culture, such as date formats. + The parameter is null. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + The URL fragment name (the anchor name). + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + The name of the route to use to obtain the form post URL. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + The parameter is null or empty. + + + Returns an anchor element that contains the virtual path for the specified route values; when the link is clicked, a request is made to the virtual path asynchronously by using JavaScript. + An anchor element. + The AJAX helper. + The inner text of the anchor element. + An object that contains the parameters for a route. + An object that provides options for the asynchronous request. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Represents option settings for running Ajax scripts in an ASP.NET MVC application. + + + Initializes a new instance of the class. + + + + Gets or sets the message to display in a confirmation window before a request is submitted. + The message to display in a confirmation window. + + + Gets or sets the HTTP request method ("Get" or "Post"). + The HTTP request method. The default value is "Post". + + + Gets or sets the mode that specifies how to insert the response into the target DOM element. + The insertion mode ("InsertAfter", "InsertBefore", or "Replace"). The default value is "Replace". + + + Gets or sets a value, in milliseconds, that controls the duration of the animation when showing or hiding the loading element. + A value, in milliseconds, that controls the duration of the animation when showing or hiding the loading element. + + + Gets or sets the id attribute of an HTML element that is displayed while the Ajax function is loading. + The ID of the element that is displayed while the Ajax function is loading. + + + Gets or sets the name of the JavaScript function to call immediately before the page is updated. + The name of the JavaScript function to call before the page is updated. + + + Gets or sets the JavaScript function to call when response data has been instantiated but before the page is updated. + The JavaScript function to call when the response data has been instantiated. + + + Gets or sets the JavaScript function to call if the page update fails. + The JavaScript function to call if the page update fails. + + + Gets or sets the JavaScript function to call after the page is successfully updated. + The JavaScript function to call after the page is successfully updated. + + + Returns the Ajax options as a collection of HTML attributes to support unobtrusive JavaScript. + The Ajax options as a collection of HTML attributes to support unobtrusive JavaScript. + + + Gets or sets the ID of the DOM element to update by using the response from the server. + The ID of the DOM element to update. + + + Gets or sets the URL to make the request to. + The URL to make the request to. + + + Enumerates the AJAX script insertion modes. + + + Insert after the element. + + + Insert before the element. + + + Replace the element. + + + Replace the entire element. + + + Provides information about an asynchronous action method, such as its name, controller, parameters, attributes, and filters. + + + Initializes a new instance of the class. + + + Invokes the asynchronous action method by using the specified parameters and controller context. + An object that contains the result of an asynchronous call. + The controller context. + The parameters of the action method. + The callback method. + An object that contains information to be used by the callback method. This parameter can be null. + + + Returns the result of an asynchronous operation. + The result of an asynchronous operation. + An object that represents the status of an asynchronous operation. + + + Executes the asynchronous action method by using the specified parameters and controller context. + The result of executing the asynchronous action method. + The controller context. + The parameters of the action method. + + + Represents a class that is responsible for invoking the action methods of an asynchronous controller. + + + Initializes a new instance of the class. + + + Invokes the asynchronous action method by using the specified controller context, action name, callback method, and state. + An object that contains the result of an asynchronous operation.Implements + The controller context. + The name of the action. + The callback method. + An object that contains information to be used by the callback method. This parameter can be null. + + + Invokes the asynchronous action method by using the specified controller context, action descriptor, parameters, callback method, and state. + An object that contains the result of an asynchronous operation. + The controller context. + The action descriptor. + The parameters for the asynchronous action method. + The callback method. + An object that contains information to be used by the callback method. This parameter can be null. + + + Invokes the asynchronous action method by using the specified controller context, filters, action descriptor, parameters, callback method, and state. + An object that contains the result of an asynchronous operation. + The controller context. + The filters. + The action descriptor. + The parameters for the asynchronous action method. + The callback method. + An object that contains information to be used by the callback method. This parameter can be null. + + + Cancels the action. + true if the action was canceled; otherwise, false. + The user-defined object that qualifies or contains information about an asynchronous operation. + + + Cancels the action. + true if the action was canceled; otherwise, false. + The user-defined object that qualifies or contains information about an asynchronous operation. + + + Cancels the action. + true if the action was canceled; otherwise, false. + The user-defined object that qualifies or contains information about an asynchronous operation. + + + Returns the controller descriptor. + The controller descriptor. + The controller context. + + + Provides asynchronous operations for the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the synchronization context. + The synchronization context. + + + Notifies ASP.NET that all asynchronous operations are complete. + + + Occurs when the method is called. + + + Gets the number of outstanding operations. + The number of outstanding operations. + + + Gets the parameters that were passed to the asynchronous completion method. + The parameters that were passed to the asynchronous completion method. + + + Executes a callback in the current synchronization context. + The asynchronous action. + + + Gets or sets the asynchronous timeout value, in milliseconds. + The asynchronous timeout value, in milliseconds. + + + Defines the interface for an action invoker, which is used to invoke an asynchronous action in response to an HTTP request. + + + Invokes the specified action. + The status of the asynchronous result. + The controller context. + The name of the asynchronous action. + The callback method. + The state. + + + Cancels the asynchronous action. + true if the asynchronous method could be canceled; otherwise, false. + The asynchronous result. + + + Used to create an instance for the current request. + + + Creates an instance of async action invoker for the current request. + The created . + + + Defines the methods that are required for an asynchronous controller. + + + Executes the specified request context. + The status of the asynchronous operation. + The request context. + The asynchronous callback method. + The state. + + + Ends the asynchronous operation. + The asynchronous result. + + + Provides a container for the asynchronous manager object. + + + Gets the asynchronous manager object. + The asynchronous manager object. + + + Provides a container that maintains a count of pending asynchronous operations. + + + Initializes a new instance of the class. + + + Occurs when an asynchronous method completes. + + + Gets the operation count. + The operation count. + + + Reduces the operation count by 1. + The updated operation count. + + + Reduces the operation count by the specified value. + The updated operation count. + The number of operations to reduce the count by. + + + Increments the operation count by one. + The updated operation count. + + + Increments the operation count by the specified value. + The updated operation count. + The number of operations to increment the count by. + + + Provides information about an asynchronous action method, such as its name, controller, parameters, attributes, and filters. + + + Initializes a new instance of the class. + An object that contains information about the method that begins the asynchronous operation (the method whose name ends with "Asynch"). + An object that contains information about the completion method (method whose name ends with "Completed"). + The name of the action. + The controller descriptor. + + + Gets the name of the action method. + The name of the action method. + + + Gets the method information for the asynchronous action method. + The method information for the asynchronous action method. + + + Begins running the asynchronous action method by using the specified parameters and controller context. + An object that contains the result of an asynchronous call. + The controller context. + The parameters of the action method. + The callback method. + An object that contains information to be used by the callback method. This parameter can be null. + + + Gets the method information for the asynchronous completion method. + The method information for the asynchronous completion method. + + + Gets the controller descriptor for the asynchronous action method. + The controller descriptor for the asynchronous action method. + + + Returns the result of an asynchronous operation. + The result of an asynchronous operation. + An object that represents the status of an asynchronous operation. + + + Returns an array of custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Returns an array of custom attributes that are defined for this member, identified by type. + An array of custom attributes, or an empty array if no custom attributes of the specified type exist. + The type of the custom attributes to return. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Gets the filter attributes. + The filter attributes. + Use cache flag. + + + Returns the parameters of the action method. + The parameters of the action method. + + + Returns the action-method selectors. + The action-method selectors. + + + Determines whether one or more instances of the specified attribute type are defined for the action member. + true if an attribute of type that is represented by is defined for this member; otherwise, false. + The type of the custom attribute. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + + Gets the lazy initialized unique ID of the instance of this class. + The lazy initialized unique ID of the instance of this class. + + + Encapsulates information that describes an asynchronous controller, such as its name, type, and actions. + + + Initializes a new instance of the class. + The type of the controller. + + + Gets the type of the controller. + The type of the controller. + + + Finds an action method by using the specified name and controller context. + The information about the action method. + The controller context. + The name of the action. + + + Returns a list of action method descriptors in the controller. + A list of action method descriptors in the controller. + + + Returns custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Returns custom attributes of a specified type that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Gets the filter attributes. + The filter attributes. + true to use the cache, otherwise false. + + + Returns a value that indicates whether one or more instances of the specified custom attribute are defined for this member. + true if an attribute of the type represented by is defined for this member; otherwise, false. + The type of the custom attribute. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Represents an exception that occurred during the synchronous processing of an HTTP request in an ASP.NET MVC application. + + + Initializes a new instance of the class using a system-supplied message. + + + Initializes a new instance of the class using the specified message. + The message that describes the exception. The caller of this constructor must make sure that this string has been localized for the current system culture. + + + Initializes a new instance of the class using a specified error message and a reference to the inner exception that is the cause of this exception. + The message that describes the exception. The caller of this constructor must make sure that this string has been localized for the current system culture. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + When an action method returns either Task or Task<T> the provides information about the action. + + + Initializes a new instance of the class. + The task method information. + The action name. + The controller descriptor. + + + Gets the name of the action method. + The name of the action method. + + + Invokes the asynchronous action method using the specified parameters, controller context callback and state. + An object that contains the result of an asynchronous call. + The controller context. + The parameters of the action method. + The optional callback method. + An object that contains information to be used by the callback method. This parameter can be null. + + + Gets the controller descriptor. + The controller descriptor. + + + Ends the asynchronous operation. + The result of an asynchronous operation. + An object that represents the status of an asynchronous operation. + + + Executes the asynchronous action method + The result of executing the asynchronous action method. + The controller context. + The parameters of the action method. + + + Returns an array of custom attributes that are defined for this member, excluding named attributes. + An array of custom attributes, or an empty array if no custom attributes exist. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Returns an array of custom attributes that are defined for this member, identified by type. + An array of custom attributes, or an empty array if no custom attributes exist. + The type of the custom attributes. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + Returns an array of all custom attributes applied to this member. + An array that contains all the custom attributes applied to this member, or an array with zero elements if no attributes are defined. + true to search this member's inheritance chain to find the attributes; otherwise, false. + + + Returns the parameters of the asynchronous action method. + The parameters of the asynchronous action method. + + + Returns the asynchronous action-method selectors. + The asynchronous action-method selectors. + + + Returns a value that indicates whether one or more instance of the specified custom attribute are defined for this member. + A value that indicates whether one or more instance of the specified custom attribute are defined for this member. + The type of the custom attribute. + true to look up the hierarchy chain for the inherited custom attribute; otherwise, false. + + + + Gets information for the asynchronous task. + Information for the asynchronous task. + + + Gets the unique ID for the task. + The unique ID for the task. + + + Represents an authentication challenge context containing information for executing an authentication challenge. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The controller context. + The action methods associated with the challenge. + The challenge response. + + + Gets or sets the action descriptor. + The action descriptor associated with the challenge. + + + Gets or sets the action result to execute. + The challenge response. + + + Represents an authentication context containing information for performing authentication. + + + Initializes a new instance of the class. + + + + Gets or sets the action descriptor. + The action methods associated with the authentication + + + Gets or sets the currently authenticated principal. + The security credentials for the authentication. + + + Gets or sets the error result, which indicates that authentication was attempted and failed. + The authentication result. + + + Defines a filter that performs authentication. + + + Authenticates the request. + The context to use for authentication. + + + Adds an authentication challenge to the current . + The context to use for the authentication challenge. + + + Defines a filter that overrides other filters. + + + Gets the type of filters to override. + The filter to override. + + + Represents support for calling child action methods and rendering the result inline in a parent view. + + + Invokes the specified child action method and returns the result as an HTML string. + The child action result as an HTML string. + The HTML helper instance that this method extends. + The name of the action method to invoke. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method with the specified parameters and returns the result as an HTML string. + The child action result as an HTML string. + The HTML helper instance that this method extends. + The name of the action method to invoke. + An object that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified controller name and returns the result as an HTML string. + The child action result as an HTML string. + The HTML helper instance that this method extends. + The name of the action method to invoke. + The name of the controller that contains the action method. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified parameters and controller name and returns the result as an HTML string. + The child action result as an HTML string. + The HTML helper instance that this method extends. + The name of the action method to invoke. + The name of the controller that contains the action method. + An object that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified parameters and controller name and returns the result as an HTML string. + The child action result as an HTML string. + The HTML helper instance that this method extends. + The name of the action method to invoke. + The name of the controller that contains the action method. + A dictionary that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified parameters and returns the result as an HTML string. + The child action result as an HTML string. + The HTML helper instance that this method extends. + The name of the action method to invoke. + A dictionary that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method and renders the result inline in the parent view. + The HTML helper instance that this method extends. + The name of the child action method to invoke. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified parameters and renders the result inline in the parent view. + The HTML helper instance that this method extends. + The name of the child action method to invoke. + An object that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified controller name and renders the result inline in the parent view. + The HTML helper instance that this method extends. + The name of the child action method to invoke. + The name of the controller that contains the action method. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified parameters and controller name and renders the result inline in the parent view. + The HTML helper instance that this method extends. + The name of the child action method to invoke. + The name of the controller that contains the action method. + An object that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified parameters and controller name and renders the result inline in the parent view. + The HTML helper instance that this method extends. + The name of the child action method to invoke. + The name of the controller that contains the action method. + A dictionary that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Invokes the specified child action method using the specified parameters and renders the result inline in the parent view. + The HTML helper instance that this method extends. + The name of the child action method to invoke. + A dictionary that contains the parameters for a route. You can use to provide the parameters that are bound to the action method parameters. The parameter is merged with the original route values and overrides them. + The parameter is null. + The parameter is null or empty. + The required virtual path data cannot be found. + + + Represents support for rendering object values as HTML. + + + Returns HTML markup for each property in the object that is represented by a string expression. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + + + Returns HTML markup for each property in the object that is represented by a string expression, using additional view data. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns HTML markup for each property in the object that is represented by the expression, using the specified template. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + + + Returns HTML markup for each property in the object that is represented by the expression, using the specified template and additional view data. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns HTML markup for each property in the object that is represented by the expression, using the specified template and an HTML field ID. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + + + Returns HTML markup for each property in the object that is represented by the expression, using the specified template, HTML field ID, and additional view data. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns HTML markup for each property in the object that is represented by the expression. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The type of the model. + The type of the value. + + + Returns a string that contains each property value in the object that is represented by the specified expression, using additional view data. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + The type of the model. + The type of the value. + + + Returns a string that contains each property value in the object that is represented by the , using the specified template. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + The type of the model. + The type of the value. + + + Returns a string that contains each property value in the object that is represented by the specified expression, using the specified template and additional view data. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + The type of the model. + The type of the value. + + + Returns HTML markup for each property in the object that is represented by the , using the specified template and an HTML field ID. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + The type of the model. + The type of the value. + + + Returns HTML markup for each property in the object that is represented by the specified expression, using the template, an HTML field ID, and additional view data. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template that is used to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + The type of the model. + The type of the value. + + + Returns HTML markup for each property in the model. + The HTML markup for each property in the model. + The HTML helper instance that this method extends. + + + Returns HTML markup for each property in the model, using additional view data. + The HTML markup for each property in the model. + The HTML helper instance that this method extends. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns HTML markup for each property in the model using the specified template. + The HTML markup for each property in the model. + The HTML helper instance that this method extends. + The name of the template that is used to render the object. + + + Returns HTML markup for each property in the model, using the specified template and additional view data. + The HTML markup for each property in the model. + The HTML helper instance that this method extends. + The name of the template that is used to render the object. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns HTML markup for each property in the model using the specified template and HTML field ID. + The HTML markup for each property in the model. + The HTML helper instance that this method extends. + The name of the template that is used to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + + + Returns HTML markup for each property in the model, using the specified template, an HTML field ID, and additional view data. + The HTML markup for each property in the model. + The HTML helper instance that this method extends. + The name of the template that is used to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Provides a mechanism to get display names. + + + Gets the display name. + The display name. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the display name. + + + Gets the display name for the model. + The display name for the model. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the display name. + The type of the model. + The type of the value. + + + Gets the display name for the model. + The display name for the model. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the display name. + The type of the model. + The type of the value. + + + Gets the display name for the model. + The display name for the model. + The HTML helper instance that this method extends. + + + Provides a way to render object values as HTML. + + + Returns HTML markup for each property in the object that is represented by the specified expression. + The HTML markup for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + + + Returns HTML markup for each property in the object that is represented by the specified expression. + The HTML markup for each property. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The type of the model. + The type of the result. + + + Represents support for the HTML input element in an application. + + + Returns an HTML input element for each property in the object that is represented by the expression. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + + + Returns an HTML input element for each property in the object that is represented by the expression, using additional view data. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template and additional view data. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template and HTML field name. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template, HTML field name, and additional view data. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns an HTML input element for each property in the object that is represented by the expression. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The type of the model. + The type of the value. + + + Returns an HTML input element for each property in the object that is represented by the expression, using additional view data. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + The type of the model. + The type of the value. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + The type of the model. + The type of the value. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template and additional view data. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + The type of the model. + The type of the value. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template and HTML field name. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + The type of the model. + The type of the value. + + + Returns an HTML input element for each property in the object that is represented by the expression, using the specified template, HTML field name, and additional view data. + An HTML input element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + The name of the template to use to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + The type of the model. + The type of the value. + + + Returns an HTML input element for each property in the model. + An HTML input element for each property in the model. + The HTML helper instance that this method extends. + + + Returns an HTML input element for each property in the model, using additional view data. + An HTML input element for each property in the model. + The HTML helper instance that this method extends. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns an HTML input element for each property in the model, using the specified template. + An HTML input element for each property in the model and in the specified template. + The HTML helper instance that this method extends. + The name of the template to use to render the object. + + + Returns an HTML input element for each property in the model, using the specified template and additional view data. + An HTML input element for each property in the model. + The HTML helper instance that this method extends. + The name of the template to use to render the object. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Returns an HTML input element for each property in the model, using the specified template name and HTML field name. + An HTML input element for each property in the model and in the named template. + The HTML helper instance that this method extends. + The name of the template to use to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + + + Returns an HTML input element for each property in the model, using the template name, HTML field name, and additional view data. + An HTML input element for each property in the model. + The HTML helper instance that this method extends. + The name of the template to use to render the object. + A string that is used to disambiguate the names of HTML input elements that are rendered for properties that have the same name. + An anonymous object that can contain additional view data that will be merged into the instance that is created for the template. + + + Provides methods for working with enumeration values and select lists. + + + Gets a list of objects corresponding to enum constants defined in the given type. + A list for the given . + The type to evaluate. + + + Gets a list of objects corresponding to enum constants defined in the given type. Also ensures the will round-trip even if it does not match a defined constant and sets the Selected property to true for one element in the returned list -- matching the . + A list for the given , possibly extended to include an unrecognized . + The type to evaluate. + The value from type to select. + + + Gets a list of objects corresponding to enum constants defined in the given metadata. + A list for the given metadata. + The model metadata to evaluate. + + + Gets a list of objects corresponding to enum constants defined in the given metadata. Also ensures the value will round-trip even if it does not match a defined constant and sets the Selected property to true for one element in the returned list -- matching the value. + A list for the given , possibly extended to include an unrecognized . + The metadata to evaluate. + Value from the type of metadata to select. + + + Gets a value indicating whether the given type or an expression of this type is suitable for use in and calls. + true if will not throw when passed the given type and will not throw when passed an expression of this type; otherwise, false. + The type to check. + + + Gets a value indicating whether the given metadata or associated expression is suitable for use in and calls. + true if will return not throw when passed given and will not throw when passed associated expression; otherwise, false. + The metadata to check. + + + Represents support for HTML in an application. + + + Writes an opening <form> tag to the response. The form uses the POST method, and the request is processed by the action method for the view. + An opening <form> tag. + The HTML helper instance that this method extends. + + + Writes an opening <form> tag to the response and includes the route values in the action attribute. The form uses the POST method, and the request is processed by the action method for the view. + An opening <form> tag. + The HTML helper instance that this method extends. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + + + Writes an opening <form> tag to the response and sets the action tag to the specified controller and action. The form uses the POST method. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + + + Writes an opening <form> tag to the response, and sets the action tag to the specified controller, action, and route values. The form uses the POST method. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + + + Writes an opening <form> tag to the response and sets the action tag to the specified controller, action, and route values. The form uses the specified HTTP method. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + The HTTP method for processing the form, either GET or POST. + + + Writes an opening <form> tag to the response and sets the action tag to the specified controller, action, and route values. The form uses the specified HTTP method and includes the HTML attributes. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response and sets the action tag to the specified controller and action. The form uses the specified HTTP method. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + The HTTP method for processing the form, either GET or POST. + + + Writes an opening <form> tag to the response and sets the action tag to the specified controller and action. The form uses the specified HTTP method and includes the HTML attributes from a dictionary. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response and sets the action tag to the specified controller and action. The form uses the specified HTTP method and includes the HTML attributes. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response, and sets the action tag to the specified controller, action, and route values from the route value dictionary. The form uses the POST method. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + + + Writes an opening <form> tag to the response, and sets the action tag to the specified controller, action, and route values from the route value dictionary. The form uses the specified HTTP method. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + The HTTP method for processing the form, either GET or POST. + + + Writes an opening <form> tag to the response, and sets the action tag to the specified controller, action, and route values from the route value dictionary. The form uses the specified HTTP method, and includes the HTML attributes from the dictionary. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the action method. + The name of the controller. + An object that contains the parameters for a route. + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response and includes the route values from the route value dictionary in the action attribute. The form uses the POST method, and the request is processed by the action method for the view. + An opening <form> tag. + The HTML helper instance that this method extends. + An object that contains the parameters for a route. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + The HTTP method for processing the form, either GET or POST. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. This object is typically created by using object initializer syntax. + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + The HTTP method for processing the form, either GET or POST. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + An object that contains the parameters for a route + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + An object that contains the parameters for a route + The HTTP method for processing the form, either GET or POST. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + The name of the route to use to obtain the form-post URL. + An object that contains the parameters for a route + The HTTP method for processing the form, either GET or POST. + An object that contains the HTML attributes to set for the element. + + + Writes an opening <form> tag to the response. When the user submits the form, the request will be processed by the route target. + An opening <form> tag. + The HTML helper instance that this method extends. + An object that contains the parameters for a route + + + Renders the closing </form> tag to the response. + The HTML helper instance that this method extends. + + + Represents support for HTML input controls in an application. + + + Returns a check box input element by using the specified HTML helper and the name of the form field. + An input element whose type attribute is set to "checkbox". + The HTML helper instance that this method extends. + The name of the form field. + + + Returns a check box input element by using the specified HTML helper, the name of the form field, and a value to indicate whether the check box is selected. + An input element whose type attribute is set to "checkbox". + The HTML helper instance that this method extends. + The name of the form field. + true to select the check box; otherwise, false. The value of the check box is retrieved in this order - the object, the value of this parameter, the object, and lastly, a checked attribute in the html attributes. + + + Returns a check box input element by using the specified HTML helper, the name of the form field, a value to indicate whether the check box is selected, and the HTML attributes. + An input element whose type attribute is set to "checkbox". + The HTML helper instance that this method extends. + The name of the form field. + true to select the check box; otherwise, false. The value of the check box is retrieved in this order - the object, the value of this parameter, the object, and lastly, a checked attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + + + Returns a check box input element by using the specified HTML helper, the name of the form field, a value that indicates whether the check box is selected, and the HTML attributes. + An input element whose type attribute is set to "checkbox". + The HTML helper instance that this method extends. + The name of the form field. + true to select the check box; otherwise, false. The value of the check box is retrieved in this order - the object, the value of this parameter, the object, and lastly, a checked attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + + + Returns a check box input element by using the specified HTML helper, the name of the form field, and the HTML attributes. + An input element whose type attribute is set to "checkbox". + The HTML helper instance that this method extends. + The name of the form field. + An object that contains the HTML attributes to set for the element. + + + Returns a check box input element by using the specified HTML helper, the name of the form field, and the HTML attributes. + An input element whose type attribute is set to "checkbox". + The HTML helper instance that this method extends. + The name of the form field. + An object that contains the HTML attributes to set for the element. + + + Returns a check box input element for each property in the object that is represented by the specified expression. + An HTML input element whose type attribute is set to "checkbox" for each property in the object that is represented by the specified expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The type of the model. + The parameter is null. + + + Returns a check box input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element whose type attribute is set to "checkbox" for each property in the object that is represented by the specified expression, using the specified HTML attributes. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The parameter is null. + + + Returns a check box input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element whose type attribute is set to "checkbox" for each property in the object that is represented by the specified expression, using the specified HTML attributes. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + An object that contains the HTML attributes to set for the element. + The type of the model. + The parameter is null. + + + Returns a hidden input element by using the specified HTML helper and the name of the form field. + An input element whose type attribute is set to "hidden". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + + + Returns a hidden input element by using the specified HTML helper, the name of the form field, and the value. + An input element whose type attribute is set to "hidden". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the hidden input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + + + Returns a hidden input element by using the specified HTML helper, the name of the form field, the value, and the HTML attributes. + An input element whose type attribute is set to "hidden". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the hidden input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + + + Returns a hidden input element by using the specified HTML helper, the name of the form field, the value, and the HTML attributes. + An input element whose type attribute is set to "hidden". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the hidden input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML hidden input element for each property in the object that is represented by the specified expression. + An input element whose type attribute is set to "hidden" for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The type of the model. + The type of the property. + + + Returns an HTML hidden input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An input element whose type attribute is set to "hidden" for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + + + Returns an HTML hidden input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An input element whose type attribute is set to "hidden" for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + + + Returns a password input element by using the specified HTML helper and the name of the form field. + An input element whose type attribute is set to "password". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + + + Returns a password input element by using the specified HTML helper, the name of the form field, and the value. + An input element whose type attribute is set to "password". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the password input element. If a value for this parameter is not provided, the value attribute in the html attributes is used to retrieve the value. + + + Returns a password input element by using the specified HTML helper, the name of the form field, the value, and the HTML attributes. + An input element whose type attribute is set to "password". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the password input element. If a value for this parameter is not provided, the value attribute in the html attributes is used to retrieve the value. + An object that contains the HTML attributes to set for the element. + + + Returns a password input element by using the specified HTML helper, the name of the form field, the value, and the HTML attributes. + An input element whose type attribute is set to "password". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the password input element. If a value for this parameter is not provided, the value attribute in the html attributes is used to retrieve the value. + An object that contains the HTML attributes to set for the element. + + + Returns a password input element for each property in the object that is represented by the specified expression. + An HTML input element whose type attribute is set to "password" for each property in the object that is represented by the specified expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The type of the model. + The type of the value. + The parameter is null. + + + Returns a password input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element whose type attribute is set to "password" for each property in the object that is represented by the specified expression, using the specified HTML attributes. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns a password input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element whose type attribute is set to "password" for each property in the object that is represented by the specified expression, using the specified HTML attributes. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns a radio button input element that is used to present mutually exclusive options. + An input element whose type attribute is set to "radio". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + The parameter is null or empty. + The parameter is null. + + + Returns a radio button input element that is used to present mutually exclusive options. + An input element whose type attribute is set to "radio". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + true to select the radio button; otherwise, false. + The parameter is null or empty. + The parameter is null. + + + Returns a radio button input element that is used to present mutually exclusive options. + An input element whose type attribute is set to "radio". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + true to select the radio button; otherwise, false. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + The parameter is null. + + + Returns a radio button input element that is used to present mutually exclusive options. + An input element whose type attribute is set to "radio". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + true to select the radio button; otherwise, false. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + The parameter is null. + + + Returns a radio button input element that is used to present mutually exclusive options. + An input element whose type attribute is set to "radio". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + The parameter is null. + + + Returns a radio button input element that is used to present mutually exclusive options. + An input element whose type attribute is set to "radio". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + The parameter is null. + + + Returns a radio button input element for each property in the object that is represented by the specified expression. + An HTML input element whose type attribute is set to "radio" for each property in the object that is represented by the specified expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + The type of the model. + The type of the value. + The parameter is null. + + + Returns a radio button input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element whose type attribute is set to "radio" for each property in the object that is represented by the specified expression, using the specified HTML attributes. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns a radio button input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element whose type attribute is set to "radio" for each property in the object that is represented by the specified expression, using the specified HTML attributes. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The value of the selected radio button. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns a text input element by using the specified HTML helper and the name of the form field. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + + + Returns a text input element by using the specified HTML helper, the name of the form field, and the value. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the text input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + + + Returns a text input element by using the specified HTML helper, the name of the form field, the value, and the HTML attributes. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the text input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + + + Returns a text input element by using the specified HTML helper, the name of the form field, the value, and the HTML attributes. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the text input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + An object that contains the HTML attributes to set for the element. + + + Returns a text input element. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + The name of the form field. + The value of the text input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + A string that is used to format the input. + + + Returns a text input element. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the text input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + A string that is used to format the input. + An object that contains the HTML attributes to set for the element. + + + Returns a text input element. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + The name of the form field and the key that is used to look up the value. + The value of the text input element. The value is retrieved in this order - the object, the value of this parameter, the object, and lastly, a value attribute in the html attributes. + A string that is used to format the input. + An object that contains the HTML attributes to set for the element. + + + Returns a text input element for each property in the object that is represented by the specified expression. + An HTML input element whose type attribute is set to "text" for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The type of the model. + The type of the value. + The parameter is null or empty. + + + Returns a text input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element type attribute is set to "text" for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null or empty. + + + Returns a text input element for each property in the object that is represented by the specified expression, using the specified HTML attributes. + An HTML input element whose type attribute is set to "text" for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null or empty. + + + Returns a text input element. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A string that is used to format the input. + The type of the model. + The type of the value. + + + Returns a text input element. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A string that is used to format the input. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Returns a text input element. + An input element whose type attribute is set to "text". + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A string that is used to format the input. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Represents support for the HTML label element in an ASP.NET MVC view. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression using the label text. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + The label text to display. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + The label text. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + The label text. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + The type of the model. + The type of the value. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + An object that contains the HTML attributes to set for the element. + The type of the model. + The value. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression using the label text. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + The label text to display. + The type of the model. + The type of the value. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + The label text to display. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the property to display. + The label text. + An object that contains the HTML attributes to set for the element. + The type of the model. + The Value. + + + Returns an HTML label element and the property name of the property that is represented by the model. + An HTML label element and the property name of the property that is represented by the model. + The HTML helper instance that this method extends. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression using the label text. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + The label text to display. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + The label Text. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML label element and the property name of the property that is represented by the specified expression. + An HTML label element and the property name of the property that is represented by the expression. + The HTML helper instance that this method extends. + The label text. + An object that contains the HTML attributes to set for the element. + + + Represents support for HTML links in an application. + + + Returns an anchor element (a element) for the specified link text and action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, and route values. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, route values, and HTML attributes. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + An object that contains the HTML attributes for the element. The attributes are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, and controller. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + The name of the controller. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, controller, route values, and HTML attributes. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + The name of the controller. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, controller, protocol, host name, URL fragment, route values, and HTML attributes. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + The name of the controller. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + The URL fragment name (the anchor name). + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, controller, protocol, host name, URL fragment, route values as a route value dictionary, and HTML attributes as a dictionary. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + The name of the controller. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + The URL fragment name (the anchor name). + An object that contains the parameters for a route. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, controller, route values as a route value dictionary, and HTML attributes as a dictionary. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + The name of the controller. + An object that contains the parameters for a route. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, and route values as a route value dictionary. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + An object that contains the parameters for a route. + The parameter is null or empty. + + + Returns an anchor element (a element) for the specified link text, action, route values as a route value dictionary, and HTML attributes as a dictionary. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the action. + An object that contains the parameters for a route. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the route that is used to return a virtual path. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the route that is used to return a virtual path. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the route that is used to return a virtual path. + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the route that is used to return a virtual path. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + The URL fragment name (the anchor name). + An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the route that is used to return a virtual path. + The protocol for the URL, such as "http" or "https". + The host name for the URL. + The URL fragment name (the anchor name). + An object that contains the parameters for a route. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the route that is used to return a virtual path. + An object that contains the parameters for a route. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + The name of the route that is used to return a virtual path. + An object that contains the parameters for a route. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + An object that contains the parameters for a route. + The parameter is null or empty. + + + Returns an anchor element (a element) that contains the virtual path of the specified action. + An anchor element (a element). + The HTML helper instance that this method extends. + The inner text of the anchor element. + An object that contains the parameters for a route. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Represents an HTML form element in an MVC view. + + + Initializes a new instance of the class using the specified HTTP response object. + The HTTP response object. + The parameter is null. + + + Initializes a new instance of the class using the specified view context. + An object that encapsulates the information that is required in order to render a view. + The parameter is null. + + + Releases all resources that are used by the current instance of the class. + + + Releases unmanaged and, optionally, managed resources used by the current instance of the class. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Ends the form and disposes of all form resources. + + + Gets the HTML ID and name attributes of the string. + + + Gets the ID of the string. + The HTML ID attribute value for the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the ID. + + + Gets the ID of the string + The HTML ID attribute value for the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the ID. + The type of the model. + The type of the property. + + + Gets the ID of the string. + The HTML ID attribute value for the object that is represented by the expression. + The HTML helper instance that this method extends. + + + Gets the full HTML field name for the object that is represented by the expression. + The full HTML field name for the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the name. + + + Gets the full HTML field name for the object that is represented by the expression. + The full HTML field name for the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the name. + The type of the model. + The type of the property. + + + Gets the full HTML field name for the object that is represented by the expression. + The full HTML field name for the object that is represented by the expression. + The HTML helper instance that this method extends. + + + Represents the functionality to render a partial view as an HTML-encoded string. + + + Renders the specified partial view as an HTML-encoded string. + The partial view that is rendered as an HTML-encoded string. + The HTML helper instance that this method extends. + The name of the partial view to render. + + + Renders the specified partial view as an HTML-encoded string. + The partial view that is rendered as an HTML-encoded string. + The HTML helper instance that this method extends. + The name of the partial view to render. + The model for the partial view. + + + Renders the specified partial view as an HTML-encoded string. + The partial view that is rendered as an HTML-encoded string. + The HTML helper instance that this method extends. + The name of the partial view. + The model for the partial view. + The view data dictionary for the partial view. + + + Renders the specified partial view as an HTML-encoded string. + The partial view that is rendered as an HTML-encoded string. + The HTML helper instance that this method extends. + The name of the partial view to render. + The view data dictionary for the partial view. + + + Provides support for rendering a partial view. + + + Renders the specified partial view by using the specified HTML helper. + The HTML helper. + The name of the partial view + + + Renders the specified partial view, passing it a copy of the current object, but with the Model property set to the specified model. + The HTML helper. + The name of the partial view. + The model. + + + Renders the specified partial view, replacing the partial view's ViewData property with the specified object and setting the Model property of the view data to the specified model. + The HTML helper. + The name of the partial view. + The model for the partial view. + The view data for the partial view. + + + Renders the specified partial view, replacing its ViewData property with the specified object. + The HTML helper. + The name of the partial view. + The view data. + + + Represents support for making selections in a list. + + + Returns a single-selection select element using the specified HTML helper and the name of the form field. + An HTML select element. + The HTML helper instance that this method extends. + The name of the form field to return. + The parameter is null or empty. + + + Returns a single-selection select element using the specified HTML helper, the name of the form field, and the specified list items. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + The parameter is null or empty. + + + Returns a single-selection select element using the specified HTML helper, the name of the form field, the specified list items, and the specified HTML attributes. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns a single-selection select element using the specified HTML helper, the name of the form field, the specified list items, and the specified HTML attributes. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns a single-selection select element using the specified HTML helper, the name of the form field, the specified list items, and an option label. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + The text for a default empty item. This parameter can be null. + The parameter is null or empty. + + + Returns a single-selection select element using the specified HTML helper, the name of the form field, the specified list items, an option label, and the specified HTML attributes. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + The text for a default empty item. This parameter can be null. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns a single-selection select element using the specified HTML helper, the name of the form field, the specified list items, an option label, and the specified HTML attributes. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + The text for a default empty item. This parameter can be null. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns a single-selection select element using the specified HTML helper, the name of the form field, and an option label. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + The text for a default empty item. This parameter can be null. + The parameter is null or empty. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + The type of the model. + The type of the value. + The parameter is null. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items and HTML attributes. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items and HTML attributes. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items and option label. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + The text for a default empty item. This parameter can be null. + The type of the model. + The type of the value. + The parameter is null. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items, option label, and HTML attributes. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + The text for a default empty item. This parameter can be null. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items, option label, and HTML attributes. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + The text for a default empty item. This parameter can be null. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + The parameter is null. + + + Returns an HTML select element for each value in the enumeration that is represented by the specified expression. + An HTML select element for each value in the enumeration that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the values to display. + The type of the model. + The type of the value. + + + Returns an HTML select element for each value in the enumeration that is represented by the specified expression. + An HTML select element for each value in the enumeration that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the values to display. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Returns an HTML select element for each value in the enumeration that is represented by the specified expression. + An HTML select element for each value in the enumeration that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the values to display. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Returns an HTML select element for each value in the enumeration that is represented by the specified expression. + An HTML select element for each value in the enumeration that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the values to display. + The text for a default empty item. This parameter can be null. + The type of the model. + The type of the value. + + + Returns an HTML select element for each value in the enumeration that is represented by the specified expression. + An HTML select element for each value in the enumeration that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the values to display. + The text for a default empty item. This parameter can be null. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Returns an HTML select element for each value in the enumeration that is represented by the specified expression. + An HTML select element for each value in the enumeration that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the values to display. + The text for a default empty item. This parameter can be null. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the value. + + + Returns a multi-select select element using the specified HTML helper and the name of the form field. + An HTML select element. + The HTML helper instance that this method extends. + The name of the form field to return. + The parameter is null or empty. + + + Returns a multi-select select element using the specified HTML helper, the name of the form field, and the specified list items. + An HTML select element with an option subelement for each item in the list. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + The parameter is null or empty. + + + Returns a multi-select select element using the specified HTML helper, the name of the form field, the specified list items, and the specified HMTL attributes. + An HTML select element with an option subelement for each item in the list.. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns a multi-select select element using the specified HTML helper, the name of the form field, and the specified list items. + An HTML select element with an option subelement for each item in the list.. + The HTML helper instance that this method extends. + The name of the form field to return. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The parameter is null or empty. + + + Returns an HTML select element for each property in the object that is represented by the specified expression and using the specified list items. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + The type of the model. + The type of the property. + The parameter is null. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items and HTML attributes. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + The parameter is null. + + + Returns an HTML select element for each property in the object that is represented by the specified expression using the specified list items and HTML attributes. + An HTML select element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to display. + A collection of objects that are used to populate the drop-down list. + An object that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + The parameter is null. + + + Represents support for HTML textarea controls. + + + Returns the specified textarea element by using the specified HTML helper and the name of the form field. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + + + Returns the specified textarea element by using the specified HTML helper, the name of the form field, and the specified HTML attributes. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + An object that contains the HTML attributes to set for the element. + + + Returns the specified textarea element by using the specified HTML helper and HTML attributes. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + An object that contains the HTML attributes to set for the element. + + + Returns the specified textarea element by using the specified HTML helper, the name of the form field, and the text content. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + The text content. + + + Returns the specified textarea element by using the specified HTML helper, the name of the form field, the text content, and the specified HTML attributes. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + The text content. + An object that contains the HTML attributes to set for the element. + + + Returns the specified textarea element by using the specified HTML helper, the name of the form field, the text content, the number of rows and columns, and the specified HTML attributes. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + The text content. + The number of rows. + The number of columns. + An object that contains the HTML attributes to set for the element. + + + Returns the specified textarea element by using the specified HTML helper, the name of the form field, the text content, the number of rows and columns, and the specified HTML attributes. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + The text content. + The number of rows. + The number of columns. + An object that contains the HTML attributes to set for the element. + + + Returns the specified textarea element by using the specified HTML helper, the name of the form field, the text content, and the specified HTML attributes. + The textarea element. + The HTML helper instance that this method extends. + The name of the form field to return. + The text content. + An object that contains the HTML attributes to set for the element. + + + Returns an HTML textarea element for each property in the object that is represented by the specified expression. + An HTML textarea element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The type of the model. + The type of the property. + The parameter is null. + + + Returns an HTML textarea element for each property in the object that is represented by the specified expression using the specified HTML attributes. + An HTML textarea element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + The parameter is null. + + + Returns an HTML textarea element for each property in the object that is represented by the specified expression using the specified HTML attributes and the number of rows and columns. + An HTML textarea element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The number of rows. + The number of columns. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + The parameter is null. + + + Returns an HTML textarea element for each property in the object that is represented by the specified expression using the specified HTML attributes and the number of rows and columns. + An HTML textarea element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The number of rows. + The number of columns. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + The parameter is null. + + + Returns an HTML textarea element for each property in the object that is represented by the specified expression using the specified HTML attributes. + An HTML textarea element for each property in the object that is represented by the expression. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + A dictionary that contains the HTML attributes to set for the element. + The type of the model. + The type of the property. + The parameter is null. + + + Provides support for validating the input from an HTML form. + + + Gets or sets the name of the resource file (class key) that contains localized string values. + The name of the resource file (class key). + + + Retrieves the validation metadata for the specified model and applies each rule to the data field. + The HTML helper instance that this method extends. + The name of the property or model object that is being validated. + The parameter is null. + + + Retrieves the validation metadata for the specified model and applies each rule to the data field. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The type of the model. + The type of the property. + + + Displays a validation message if an error exists for the specified field in the object. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + The name of the property or model object that is being validated. + + + Displays a validation message if an error exists for the specified field in the object. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + The name of the property or model object that is being validated. + An object that contains the HTML attributes for the element. + + + Displays a validation message if an error exists for the specified entry in the object. + null if the entry is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + The name of the entry being validated. + An that contains the HTML attributes for the element. + The tag to be set for the wrapping HTML element of the validation message. + + + Displays a validation message if an error exists for the specified field in the object. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + The name of the property or model object that is being validated. + An object that contains the HTML attributes for the element. + + + Displays a validation message if an error exists for the specified entry in the object. + null if the entry is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + The name of the entry being validated. + An object that contains the HTML attributes for the element. + The tag to be set for the wrapping HTML element of the validation message. + + + Displays a validation message if an error exists for the specified field in the object. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + The name of the property or model object that is being validated. + The message to display if the specified field contains an error. + + + Displays a validation message if an error exists for the specified field in the object. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + The name of the property or model object that is being validated. + The message to display if the specified field contains an error. + An object that contains the HTML attributes for the element. + + + Displays a validation message if an error exists for the specified entry in the object. + null if the model object is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + The name of the model object being validated. + The message to display if the specified entry contains an error. + An that contains the HTML attributes for the element. + The tag to be set for the wrapping HTML element of the validation message. + + + Displays a validation message if an error exists for the specified field in the object. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + The name of the property or model object that is being validated. + The message to display if the specified field contains an error. + An object that contains the HTML attributes for the element. + + + Displays a validation message if an error exists for the specified entry in the object. + null if the entry is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + The name of the entry being validated. + The message to display if the specified entry contains an error. + An object that contains the HTML attributes for the element. + The tag to be set for the wrapping HTML element of the validation message. + + + Displays a validation message if an error exists for the specified entry in the object. + null if the entry is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + The name of the entry being validated. + The message to display if the specified entry contains an error. + The tag to be set for the wrapping HTML element of the validation message. + + + Returns the HTML markup for a validation-error message for each data field that is represented by the specified expression. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The type of the model. + The type of the property. + + + Returns the HTML markup for a validation-error message for each data field that is represented by the specified expression, using the specified message. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The message to display if the specified field contains an error. + The type of the model. + The type of the property. + + + Returns the HTML markup for a validation-error message for each data field that is represented by the specified expression, using the specified message and HTML attributes. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The message to display if the specified field contains an error. + An object that contains the HTML attributes for the element. + The type of the model. + The type of the property. + + + Returns the HTML markup for a validation-error message for the specified expression. + null if the model object is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + An expression that identifies the object that contains the properties to render. + The message to display if a validation error occurs. + An that contains the HTML attributes for the element. + The tag to be set for the wrapping HTML element of the validation message. + The type of the model. + The type of the property. + + + Returns the HTML markup for a validation-error message for each data field that is represented by the specified expression, using the specified message and HTML attributes. + If the property or object is valid, an empty string; otherwise, a span element that contains an error message. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to render. + The message to display if the specified field contains an error. + An object that contains the HTML attributes for the element. + The type of the model. + The type of the property. + + + Returns the HTML markup for a validation-error message for the specified expression. + null if the model object is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + An expression that identifies the object that contains the properties to render. + The message to display if a validation error occurs. + An object that contains the HTML attributes for the element. + The tag to be set for the wrapping HTML element of the validation message. + The type of the model. + The type of the property. + + + Returns the HTML markup for a validation-error message for the specified expression. + null if the model object is valid and client-side validation is disabled. Otherwise, a element that contains an error message. + The HTML helper instance that this method operates on. + An expression that identifies the object that contains the properties to render. + The message to display if a validation error occurs. + The tag to be set for the wrapping HTML element of the validation message. + The type of the model. + The type of the property. + + + Returns an unordered list (ul element) of validation messages that are in the object. + A string that contains an unordered list (ul element) of validation messages. + The HTML helper instance that this method extends. + + + Returns an unordered list (ul element) of validation messages that are in the object and optionally displays only model-level errors. + A string that contains an unordered list (ul element) of validation messages. + The HTML helper instance that this method extends. + true to have the summary display model-level errors only, or false to have the summary display all errors. + + + Returns an unordered list (ul element) of validation messages that are in the object and optionally displays only model-level errors. + A string that contains an unordered list (ul element) of validation messages. + The HTML helper instance that this method extends. + true to have the summary display model-level errors only, or false to have the summary display all errors. + The message to display with the validation summary. + + + Returns an unordered list (ul element) of validation messages that are in the object and optionally displays only model-level errors. + A string that contains an unordered list (ul element) of validation messages. + The HTML helper instance that this method extends. + true to have the summary display model-level errors only, or false to have the summary display all errors. + The message to display with the validation summary. + A dictionary that contains the HTML attributes for the element. + + + + Returns an unordered list (ul element) of validation messages that are in the object and optionally displays only model-level errors. + A string that contains an unordered list (ul element) of validation messages. + The HTML helper instance that this method extends. + true to have the summary display model-level errors only, or false to have the summary display all errors. + The message to display with the validation summary. + An object that contains the HTML attributes for the element. + + + + + Returns an unordered list (ul element) of validation messages that are in the object. + A string that contains an unordered list (ul element) of validation messages. + The HMTL helper instance that this method extends. + The message to display if the specified field contains an error. + + + Returns an unordered list (ul element) of validation messages that are in the object. + A string that contains an unordered list (ul element) of validation messages. + The HTML helper instance that this method extends. + The message to display if the specified field contains an error. + A dictionary that contains the HTML attributes for the element. + + + + Returns an unordered list (ul element) of validation messages in the object. + A string that contains an unordered list (ul element) of validation messages. + The HTML helper instance that this method extends. + The message to display if the specified field contains an error. + An object that contains the HTML attributes for the element. + + + + + Provides a mechanism to create custom HTML markup compatible with the ASP.NET MVC model binders and templates. + + + Provides a mechanism to create custom HTML markup compatible with the ASP.NET MVC model binders and templates. + The HTML markup for the value. + The HTML helper instance that this method extends. + The name of the model. + + + Provides a mechanism to create custom HTML markup compatible with the ASP.NET MVC model binders and templates. + The HTML markup for the value. + The HTML helper instance that this method extends. + The name of the model. + The format string. + + + Provides a mechanism to create custom HTML markup compatible with the ASP.NET MVC model binders and templates. + The HTML markup for the value. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to expose. + The model. + The property. + + + Provides a mechanism to create custom HTML markup compatible with the ASP.NET MVC model binders and templates. + The HTML markup for the value. + The HTML helper instance that this method extends. + An expression that identifies the object that contains the properties to expose. + The format string. + The model. + The property. + + + Provides a mechanism to create custom HTML markup compatible with the ASP.NET MVC model binders and templates. + The HTML markup for the value. + The HTML helper instance that this method extends. + + + Provides a mechanism to create custom HTML markup compatible with the ASP.NET MVC model binders and templates. + The HTML markup for the value. + The HTML helper instance that this method extends. + The format string. + + + Compiles ASP.NET Razor views into classes. + + + Initializes a new instance of the class. + + + The inherits directive. + + + The model directive. + + + Extends the VBCodeParser class by adding support for the @model keyword. + + + Initializes a new instance of the class. + + + Sets a value that indicates whether the current code block and model should be inherited. + true if the code block and model is inherited; otherwise, false. + + + The Model Type Directive. + Returns void. + + + Configures the ASP.NET Razor parser and code generator for a specified file. + + + Initializes a new instance of the class. + The virtual path of the ASP.NET Razor file. + The physical path of the ASP.NET Razor file. + + + Returns the ASP.NET MVC language-specific Razor code generator. + The ASP.NET MVC language-specific Razor code generator. + The C# or Visual Basic code generator. + + + Returns the ASP.NET MVC language-specific Razor code parser using the specified language parser. + The ASP.NET MVC language-specific Razor code parser. + The C# or Visual Basic code parser. + + + + + Creates instances based on the provided factories and action. The route entries provide direct routing to the provided action. + A set of route entries. + The action descriptor. + The direct route factories. + The constraint resolver. + + + Gets a set of route factories for the given action descriptor. + A set of route factories. + The action descriptor. + + + Gets the area prefix from the provided controller. + The area prefix or null. + The controller descriptor. + + + Creates instances based on the provided factories, controller and actions. The route entries provided direct routing to the provided controller and can reach the set of provided actions. + A set of route entries. + The controller descriptor. + The action descriptors. + The direct route factories. + The constraint resolver. + + + Gets route factories for the given controller descriptor. + A set of route factories. + The controller descriptor. + + + Gets direct routes for the given controller descriptor and action descriptors based on attributes. + A set of route entries. + The controller descriptor. + The action descriptors for all actions. + The constraint resolver. + + + Gets the route prefix from the provided controller. + The route prefix or null. + The controller descriptor. + + + The default implementation of . Resolves constraints by parsing a constraint key and constraint arguments, using a map to resolve the constraint type, and calling an appropriate constructor for the constraint type. + + + + Gets the mutable dictionary that maps constraint keys to a particular constraint type. + + + + Represents a context that supports creating a direct route. + + + Initializes a new instance of the class. + The route prefix, if any, defined by the area. + The route prefix, if any, defined by the controller. + The action descriptors to which to create a route. + The inline constraint resolver. + A value indicating whether the route is configured at the action or controller level. + + + Gets the action descriptors to which to create a route. + The action descriptors to which to create a route. + + + Gets the route prefix, if any, defined by the area. + The route prefix, if any, defined by the area. + + + Gets the route prefix, if any, defined by the controller. + The route prefix, if any, defined by the controller. + + + Creates a route builder that can build a route matching this context. + A route builder that can build a route matching this context. + The route template. + + + Creates a route builder that can build a route matching this context. + A route builder that can build a route matching this context. + The route template. + The inline constraint resolver to use, if any; otherwise, null. + + + Gets the inline constraint resolver. + The inline constraint resolver. + + + Gets a value indicating whether the route is configured at the action or controller level. + true when the route is configured at the action level; otherwise false if the route is configured at the controller level. + + + Defines a builder that creates direct routes to actions (attribute routes). + + + Gets the action descriptors to which to create a route. + The action descriptors to which to create a route. + + + Creates a route entry based on the current property values. + The route entry created. + + + Gets or sets the route constraints. + The route constraints. + + + Gets or sets the route data tokens. + The route data tokens. + + + Gets or sets the route defaults. + The route defaults. + + + Gets or sets the route name. + The route name, or null if no name supplied. + + + Gets or sets the route order. + The route order. + + + Gets or sets the route precedence. + The route precedence. + + + Gets a value indicating whether the route is configured at the action or controller level. + true when the route is configured at the action level; otherwise, false if the route is configured at the controller level. + + + Gets or sets the route template. + The route template. + + + Defines a factory that creates a route directly to a set of action descriptors (an attribute route). + + + Creates a direct route entry. + The direct route entry. + The context to use to create the route. + + + Defines a provider for routes that directly target action descriptors (attribute routes). + + + Gets the direct routes for a controller. + A set of route entries for the controller. + The controller descriptor. + The action descriptors. + The inline constraint resolver. + + + Defines an abstraction for resolving inline constraints as instances of . + + + Resolves the inline constraint. + The the inline constraint was resolved to. + The inline constraint to resolve. + + + Provides information for building a System.Web.Routing.Route. + + + Gets the route template describing the URI pattern to match against. + The route template describing the URI pattern to match against. + + + Gets the name of the route to generate. + The name of the route to generate. + + + Defines a route prefix. + + + Gets the route prefix. + The route prefix. + + + Builds instances based on route information. + + + Initializes a new instance of the class using the default inline constraint resolver. + + + Initializes a new instance of the class. + The to use for resolving inline constraints. + + + Builds an for a particular action. + The generated . + The tokenized route template for the route. + The HTTP methods supported by the route. A null value specify that all possible methods are supported. + The name of the associated controller. + The name of the associated action. + The method that the route attribute has been applied on. + + + Builds an for a particular action. + The generated route. + The tokenized route template for the route. + The controller the route attribute has been applied on. + + + Builds an . + The generated . + The route defaults. + The route constraints. + The detokenized route template. + The method that the route attribute has been applied on. + + + Gets the resolver for resolving inline constraints. + The resolver for resolving inline constraints. + + + Represents a named route. + + + Initializes a new instance of the class. + The route name. + The route. + + + Gets the route name. + The route name, if any; otherwise, null. + + + Gets the route. + The route. + + + Represents an attribute route that may contain custom constraints. + + + Initializes a new instance of the class. + The route template. + + + Gets the route constraints. + The route constraints, if any; otherwise null. + + + Creates a direct route entry. + The direct route entry. + The context to use to create the route. + + + Gets the route data tokens. + The route data tokens, if any; otherwise null. + + + Gets the route defaults. + The route defaults, if any; otherwise null. + + + Gets or sets the route name. + The route name, if any; otherwise null. + + + Gets or sets the route order. + The route order. + + + Gets the route template. + The route template. + + + Constrains a route parameter to contain only lowercase or uppercase letters A through Z in the English alphabet. + + + Initializes a new instance of the class. + + + Constrains a route parameter to represent only Boolean values. + + + + + Constrains a route by several child constraints. + + + Initializes a new instance of the class. + The child constraints that must match for this constraint to match. + + + Gets the child constraints that must match for this constraint to match. + The child constraints that must match for this constraint to match. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only decimal values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only 64-bit floating-point values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only 32-bit floating-point values. + + + + + Constrains a route parameter to represent only values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only 32-bit integer values. + + + + + Constrains a route parameter to be a string of a given length or within a given range of lengths. + + + + Initializes a new instance of the class that constrains a route parameter to be a string of a given length. + The minimum length of the route parameter. + The maximum length of the route parameter. + + + Gets the length of the route parameter, if one is set. + + + + Gets the maximum length of the route parameter, if one is set. + + + Gets the minimum length of the route parameter, if one is set. + + + Constrains a route parameter to represent only 64-bit integer values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to be a string with a maximum length. + + + + + Gets the maximum length of the route parameter. + + + Constrains a route parameter to be an integer with a maximum value. + + + Initializes a new instance of the class. + The maximum value. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of parameter. + A list of parameter values. + The route direction. + + + Gets the maximum value of the route parameter. + The maximum value of the route parameter. + + + Constrains a route parameter to be a string with a maximum length. + + + Initializes a new instance of the class. + The minimum length. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the compare. + A list of parameter values. + The route direction. + + + Gets the minimum length of the route parameter. + The minimum length of the route parameter. + + + Constrains a route parameter to be a long with a minimum value. + + + Initializes a new instance of the class. + The minimum value. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the minimum value of the route parameter. + The minimum value of the route parameter. + + + Constrains a route by an inner constraint that doesn't fail when an optional parameter is set to its default value. + + + Initializes a new instance of the class. + The inner constraint to match if the parameter is not an optional parameter without a value + + + Gets the inner constraint to match if the parameter is not an optional parameter without a value. + + + + Constraints a route parameter to be an integer within a given range of values. + + + Initializes a new instance of the class. + The minimum value. + The maximum value. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the maximum value of the route parameter. + The maximum value of the route parameter. + + + Gets the minimum value of the route parameter. + The minimum value of the route parameter. + + + Constrains a route parameter to match a regular expression. + + + Initializes a new instance of the class with the specified pattern. + The pattern to match. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP context. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the regular expression pattern to match. + The regular expression pattern to match. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.Razor.3.2.4/Microsoft.AspNet.Razor.3.2.4.nupkg b/packages/Microsoft.AspNet.Razor.3.2.4/Microsoft.AspNet.Razor.3.2.4.nupkg new file mode 100644 index 0000000..95c7115 Binary files /dev/null and b/packages/Microsoft.AspNet.Razor.3.2.4/Microsoft.AspNet.Razor.3.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.Razor.3.2.4/lib/net45/System.Web.Razor.dll b/packages/Microsoft.AspNet.Razor.3.2.4/lib/net45/System.Web.Razor.dll new file mode 100644 index 0000000..01bb07b Binary files /dev/null and b/packages/Microsoft.AspNet.Razor.3.2.4/lib/net45/System.Web.Razor.dll differ diff --git a/packages/Microsoft.AspNet.Razor.3.2.4/lib/net45/System.Web.Razor.xml b/packages/Microsoft.AspNet.Razor.3.2.4/lib/net45/System.Web.Razor.xml new file mode 100644 index 0000000..c88ee13 --- /dev/null +++ b/packages/Microsoft.AspNet.Razor.3.2.4/lib/net45/System.Web.Razor.xml @@ -0,0 +1,5742 @@ + + + + System.Web.Razor + + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a Razor code language that is based on C# syntax. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the type of the code provider. + The type of the code provider. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a new Razor code generator based on C# code language. + The newly created Razor code generator based on C# code language. + The class name for the generated code. + The name of the root namespace for the generated code. + The name of the source code file. + The Razor engine host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a new code parser for C# code language. + The newly created code parser for C# code language. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the name of the C# code language. + The name of the C# code language. Value is ‘csharp’. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents results from code generation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + true if the code generation is a success; otherwise, false. + The document. + The parser errors. + The generated code. + The dictionary of design-time generated code mappings. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The document. + The parser errors. + The generated code. + The dictionary of design-time generated code mappings. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The parser results. + The generated code. + The dictionary of design-time generated code mappings. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the dictionary of design-time generated code mappings. + The dictionary of design-time generated code mappings. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the generated code. + The generated code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the results of parsing a Razor document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + true if parsing was successful; otherwise, false. + The root node in the document’s syntax tree. + The list of errors which occurred during parsing. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The root node in the document’s syntax tree. + The list of errors which occurred during parsing. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the root node in the document’s syntax tree. + The root node in the document’s syntax tree. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the list of errors which occurred during parsing. + The list of errors which occurred during parsing. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value indicating whether parsing was successful. + true if parsing was successful; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + Represents the base for all Razor code language.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + Initializes a new instance of the class.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + Gets the type of the CodeDOM provider.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The type of the CodeDOM provider. + + + Creates the code generator for the Razor code language.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The code generator for the Razor code language. + The class name. + The name of the root namespace. + The source file name. + The Razor engine host. + + + Creates the code parser for the Razor code language.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The code parser for the Razor code language. + + + Gets the language of the Razor code using the specified file extension.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The language of the Razor code. + The file extension. + + + Gets the language name of the current Razor code, that is “csharp” or “vb”.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The language name of the current Razor code. + + + Gets the list of language supported by the Razor code.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The list of language supported by the Razor code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents an attribute for the Razor directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The name of the attribute. + The value of the attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether this instance is equal to a specified object. + true if the object is equal to the this instance; otherwise, false. + The object to compare with this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the name of the attribute. + The name of the attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the unique type ID of the attribute. + The unique type ID of the attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the value of the attribute. + The value of the attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parser used by editors to avoid reparsing the entire document on each text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Constructs the editor parser. + The which defines the environment in which the generated code will live. + The physical path to use in line pragmas. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines if a change will cause a structural change to the document and if not, applies it to the existing tree. If a structural change would occur, automatically starts a reparse. + A value indicating the result of the incremental parse. + The change to apply to the parse tree. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current parse tree. + The current parse tree. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Releases all resources used by the current instance of the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Releases the unmanaged resources used by the class and optionally releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Event fired when a full reparse of the document completes. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the filename of the document to parse. + The filename of the document to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves the auto complete string. + The auto complete string. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the host for the parse. + The host for the parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value indicating whether the last result of the parse was provisionally accepted for next partial parse. + true if the last result of the parse was provisionally accepted for next partial parse; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the generated code for the razor engine host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The specified code language. + + + Initializes a new instance of the class. + The specified code language. + The markup parser factory. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the languages supported by the code generator. + The languages supported that by the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a markup parser using the specified language parser for the . + A markup parser to create using the specified language parser for the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the methods as language-specific Razor code generator. + The methods as language-specific Razor code generator. + The C# or Visual Basic code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the methods as language-specific Razor code parser using the specified language parser. + The methods as language-specific Razor code parser using the specified language parser. + The C# or Visual Basic code parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the method to decorate markup parser using the specified language parser. + The method to decorate markup parser using the specified language parser. + The C# or Visual Basic code parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the default base class for the host. + The default base class for the host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the default class name for the host. + The default class name for the host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the default namespace for the host. + The default namespace for the host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value that indicates whether the mode designs a time for the host. + true if the mode designs a time for the host; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the host that enables the instrumentation. + The host that enables the instrumentation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the generated class context for the host. + The generated class context for the host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the instrumented source file path for the host. + The instrumented source file path for the host. + + + Gets or sets whether the design time editor is using tabs or spaces for indentation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the namespace imports for the host. + The namespace imports for the host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns this method to post all the processed generated code for the host. + The code compile unit. + The generated namespace. + The generated class. + The execute method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns this method to post all the processed generated code for the host. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the static helpers for the host. + The static helpers for the host. + + + Tab size used by the hosting editor, when indenting with tabs. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents an entry-point to the Razor Template Engine. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a code generator. + The created . + The name of the generated class. + The namespace in which the generated class will reside. + The file name to use in line pragmas. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a . + The created . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the default class name of the template. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the default namespace for the template. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + The name of the generated class, overriding whatever is specified in the host. + The namespace in which the generated class will reside. + The file name to use in line pragmas. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + The name of the generated class, overriding whatever is specified in the host. + The namespace in which the generated class will reside. + The file name to use in line pragmas. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + The name of the generated class, overriding whatever is specified in the host. + The namespace in which the generated class will reside. + The file name to use in line pragmas. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer, generates code for it, and returns the constructed CodeDOM tree. + The resulting parse tree AND generated Code DOM tree. + The input text to parse. + The name of the generated class, overriding whatever is specified in the host. + The namespace in which the generated class will reside. + The file name to use in line pragmas. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a code core. + The results of the generated core. + The input text to parse. + The name of the generated class, overriding whatever is specified in the host. + The namespace in which the generated class will reside. + The file name to use in line pragmas. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the which defines the environment in which the generated template code will live. + The which defines the environment in which the generated template code will live. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer and returns its result. + The resulting parse tree. + The input text to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer and returns its result. + The resulting parse tree. + The input text to parse. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer and returns its result. + The resulting parse tree. + The input text to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template specified by the TextBuffer and returns its result. + The resulting parse tree. + The input text to parse. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the template core. + The resulting parse tree. + The input text to parse. + A token used to cancel the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the state of the machine. + The generic type Return. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the current state of the machine. + The current state of the machine. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the starting state of the machine. + The starting state of the machine. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Stays into the machine during the transition. + Transition of the state machine. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Stays into the machine during the transition with the specified output. + The output of the transition. + The output. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Disables the machine upon transition. + The machine to stop. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the new transition of the state. + The new transition of the state. + The new state. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the new transition of the state with the specified output. + The new transition of the state with the specified output. + The output. + The new state. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Describes the turning process of the state. + The turning process of the state. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the state result. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The next output. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The output. + The next state. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value indicating whether the state has output. + true if the state has output; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the next state in the machine. + The next state in the machine. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the output. + The representing the output. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a language generator and provider of the VB razor code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the type of CodeDomProvider. + The type of CodeDomProvider. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates the code language generator. + The code language generator. + The name of the class. + The root namespace name. + The source File name. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a code parser in a . + A code parser in a . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the language name. + The language name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the editing result of the Editor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The partial parse result. + The edited span builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the edited span of the . + The edited span of the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the partial parse result. + The partial parse result. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Provides edit handler for implicit expression. + + + Initializes a new instance of the class. + The tokenizer. + The keywords. + true to accept trailing dot; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value indicating whether the expression accepts trailing dot. + true if the expression accepts trailing dot; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the parse that can accept change. + The partial parse result. + The target. + The normalized change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether the specified object is equal to the current object. + true if the specified object is equal to the current objet; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves the hash code for this current instance. + The hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the keywords associated with the expression. + The keywords associated with the expression. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of this current instance. + A string representation of this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the handler editor for this webpages. + + + Initializes a new instance of the class. + The tokenizer symbols. + + + Initializes a new instance of the class. + The tokenizer symbols. + The accepted characters. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Provides methods for handling the span edits. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The method used to parse string into tokens. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The method used to parse string into tokens. + One of the values of the enumeration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets a value that specifies the accepted characters. + One of the values of the enumeration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Applies the text change to the span. + The result of the apply operation. + The span to apply changes to. + The change to apply. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Applies the text change to the span. + The result of the apply operation. + The span to apply changes to. + The change to apply. + true to accept partial result; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the span can accept the specified change. + true if the span can accept the specified change; otherwise, false. + The span to check. + The change to apply. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a new default span edit handler. + A newly created default span edit handler. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a new default span edit handler. + A newly created default span edit handler. + The method used to parse string into tokens. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the editor hints. + The editor hints. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether this instance is equal to a specified object. + true if the object is equal to the this instance; otherwise, false. + The object to compare with this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the old text from the span content. + The old text from the span content. + The span to get old text from. + The text change which contains the location of the old text. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified change is at the end of first line of the span content. + true if the specified change is at the end of first line of the span content; otherwise, false. + The span to check. + The change to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified change is at the end of the span. + true if the specified change is at the end of the span; otherwise, false. + The span to check. + The change to chek. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified change is at the end the span content and for deletion. + true if the specified change is at the end the span content and for deletion; otherwise, false. + The span to check. + The change to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified change is at the end the span content and for insertion. + true if the specified change is at the end the span content and for insertion; otherwise, false. + The span to check. + The change to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified change is at the end the span content and for replacement. + true if the specified change is at the end the span content and for replacement; otherwise, false. + The span to check. + The change to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the span owns the specified change. + true if the span owns the specified change; otherwise, false. + The span to check. + The change to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the method used to parse string into tokens. + The method used to parse string into tokens. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation of the span edit handler. + The string representation of the span edit handler. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Updates the span using the normalized change. + The new span builder for the specified target. + The span to update. + The normalized change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the added import code generator for the razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The string namespace. + The length of the keyword namespace. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether two object instances are equal. + true if the specified object is equal to the current object; otherwise, false. + The object to compare with the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code with the specified parameters using the added import code generator. + The target span. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the string namespace of the generator to add import code generator. + The string namespace of the generator to add import code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the length of keyword namespace for the code generator. + The length of keyword namespace for the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string that represents the current object. + A string that represents the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the attributes of the block code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The name. + The prefix string. + The suffix string. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare with the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code to end the block using the specified parameters. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code to start the block using the specified parameters. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this code generator. + The hash code for this code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the string name of the . + The string name of the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the prefix of the code generator. + The prefix of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the suffix for the code generator. + The suffix for the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string that represents the current object. + A string that represents the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represent the block code generator for this razor syntax. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare with the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the end of the block code generator for this razor syntax. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the start of the block code generator for this razor syntax. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a hash code for the block code generator. + A hash code for the block code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a null value for the block code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the completion of event arguments for the code generation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The virtual path string. + The physical path string. + The generated code compile unit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the generated code to complete the event argument. + The generated code to complete the event argument. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the physical path for the code generation. + The physical path for the code generation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the virtual path of the code generation. + The virtual path of the code generation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents the context of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds a new generated code mapping to the collection. + The collection index of the newly added code mapping. + The source location of the generated code mapping. + The code start of the generated code mapping. + The length of the generated code mapping. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds a code statement for a context call on the specified method. + The content span. + The name of the method to invoke a context call. + true to specify that the method parameter is literal; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds a code statement that inserts the Razor design time helpers method in the specified code statement. + The code statement that receives the code insertion. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds the specified code statement to the body of the target method. + The code statement to add the target method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds the specified code statement to the body of the target method. + The code statement to add the target method. + The line pragma. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Appends the specified fragment to the current buffered statement. + The fragment to add. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Appends the specified fragment to the current buffered statement. + The fragment to add. + The source span for the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Appends the content of the span to the current buffered statement. + The source span whose content is to be added. + + + Assigns a new statement collector and returns a disposable action that restores the old statement collector. + A disposable action that restores the old statement collector. + The new statement collector. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the dictionary collection of generated code mapping. + The dictionary collection of generated code mapping. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the code compile unit that will hold the program graph. + The code compile unit that will hold the program graph. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a new instance of the class. + The newly created instance of the code generator context. + The Razor engine host. + The class name for the generated class type declaration. + The name for the generated namespace declaration. + The source file. + true to enable the generation of line pragmas; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the current buffered statement. + The current buffered statement. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds the expression helper variable to the generated class if not yet added, + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Flushes the current buffered statement. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the generated class type declaration. + The generated class type declaration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the line pragma for the specified source. + The line pragma for the specified source. + The source span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the line pragma for the source. + The line pragma for the specified source. + The source span. + The start index of code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the line pragma for the source. + The line pragma for the specified source. + The source span. + The start index of code. + The length of code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the line pragma for the source. + The line pragma for the specified source. + The source location. + The start index of code. + The length of code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the Razor engine host. + The Razor engine host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Marks the end of generated code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Marks the start of generated code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the generated namespace declaration. + The generated namespace declaration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the source file. + The source file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the generated member method. + The generated member method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the name of text writer. + The name of text writer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a Razor code generator for C# language. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The class name for the generated class type declaration. + The name for the generated namespace declaration. + The source file. + The Razor engine host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes the context for this code generator. + The context for this code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the dynamic attributes of the block code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instances of the class. + The prefix. + The offset values. + The line values. + The col. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instances of the class. + The string prefix. + The value start. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare with the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code to end the block using the specified parameters. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code to start the block using the specified parameters. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the namespace prefix of the code generator. + The namespace prefix of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string that represents the current object. + A string that represents the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the value start for the dynamic attribute block code generator. + The value start for the dynamic attribute block code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a code generator for expression. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether this instance and a specified object are equal. + true if and this instance are the same type and represent the same value; otherwise, false. + The object to compare with the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code for the expression. + The source span whose content represents an expression. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the end code for the block. + The target block for the end code generation. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the start code for the block. + The target block the start code generation. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the string representation of this instance. + The string representation of this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a generated class context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The execute method name. + The write method name. + Write literal method name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + Execute method name. + Write method name. + Write literal method name. + Write to method name. + Write literal to method name. + Template type name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + Execute method name. + Write method name. + Write literal method name. + Write to method name. + Write literal to method name. + Template type name. + Define section method name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + Execute method name. + Write method name. + Write literal method name. + Write to method name. + Write literal to method name. + Template type name. + Define section method name. + Begin context method name. + End context method name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value indicating whether the context allows sections. + true if the context allows sections; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value indicating whether the context allows templates. + true if the context allows templates; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method before the generated context. + The name of the method before the generated context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the default generated context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the default name of the execute method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the default name of the layout property. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the default name of the write attribute method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the default name of the write to attribute to method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Specifies the default name of the write literal method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Specifies the default name of the write method. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method that defines the section of the context. + The name of the method that defines the section of the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method after the generated context. + The name of the method after the generated context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method that will be invoked on the context. + The name of the method that will be invoked on the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this current instance. + The hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the property name for the layout. + The property name for the layout. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two object are equal. + true if the two object are equal; otherwise, false. + The first object to compare. + The second object to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two object are not equal. + true if the two object are not equal; otherwise, false. + The first object to compare. + The second object to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method that resolves a Url for the context. + The name of the method that resolves a Url for the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value indicating whether the generated class supports instrumentation. + true if the generated class supports instrumentation; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the type name for the template. + The type name for the template. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method that writes an attribute. + The name of the method that writes an attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method where to write an attribute. + The name of the method where to write an attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method where to write literal for the context. + The name of the method where to write literal for the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method where to write literal for the context. + The name of the method where to write literal for the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method that will write on the context. + The name of the method that will write on the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the method that will write on the context. + The name of the method that will write on the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the generated code mapping objects. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The starting line. + The starting column. + The start generated column. + The code length. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The start offset. + The starting line. + The starting column. + The start generated column. + The code length. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the length of the generated map codes. + The length of the generated map codes. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current generated code mapping object. + true if the specified object is equal to the current generated code mapping object; otherwise, false. + The object to compare with the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for the generated code mapping object. + The hash code for the generated code mapping object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two specified generated code mapping objects have the same value. + true if the two specified generated code mapping objects have the same value; otherwise, false. + The left generated code mapping objects. + The right generated code mapping objects. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two specified generated code mapping objects have different values. + true the two specified generated code mapping objects have different values; otherwise, false. + The right generated code mapping objects. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the starting column of the generated code maps. + The starting column of the generated code maps. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the starting column of a generated code maps in the generated source file. + The starting column of a generated code maps in the generated source file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the starting line of the generated code maps. + The starting line of the generated code maps. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the starting offset of the generated code maps. + The starting offset of the generated code maps. + + + Returns a string that represents the current object. + A string that represents the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a helper code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The signature. + true to complete the header; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the footer for this code. + The footer for this code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a block after the code. + The block to generate. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a block before the code. + The block to generate. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the hash code for the current instance. + The hash code for the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value indicating whether the header for this code is complete. + true if the header for this code is complete; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the signature for this code. + The signature for this code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of the current instance. + A string representation of the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a hybrid code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code for the data model from switches identified by parameters. + The target object. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates an end block code. + The target object. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the start block code. + The target object. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the for the webpages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the end block code for the razor. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the start block code for the razor. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a phase of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code for the data model with the specified target and context. + The target object. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a code generator for literal attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. . Initializes a new instance of the class. + The prefix of the literal attribute. + The value of the literal attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. . Initializes a new instance of the class. + The prefix of the literal attribute. + The value generator for the literal attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this instance. + true if the specified object is equal to this instance; otherwise, false. + The object to compare to this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the code for the literal attribute. + The source span whose content represents the literal attribute. + The context of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the hash code for the current instance. + The hash code for the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the prefix of the literal attribute. + The prefix of the literal attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation of this instance. + The string representation of this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the value of the literal attribute. + The value of the literal attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the value generator for the literal attribute. + The value generator for the literal attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a code generator for markup. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this instance. + true if the specified object is equal to this instance; otherwise, false. + The object to compare to this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the code for the markup. + The source span whose content represents the markup. + The context of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation for this instance. + The string representation for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a Razor code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The class name. + The root namespace name. + The source file name. + The host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the class name for this code. + The class name for this code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the context of this code generator. + The context of this code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value indicating whether the code generator is in design-time mode. + true if the code generator is in design-time mode; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value indicating whether the generator should generate line pragmas in the Razor code. + true if the generator should generate line pragmas in the Razor code; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the razor engine host. + The razor engine host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes the current instance. + The context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Raises the Complete event. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the root namespace. + The name of the root namespace. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the source file. + The name of the source file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the end block. + The block to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the span. + The span to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the start block. + The block to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the razor comment code generator for the webpages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the start block code with the specified parameters. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a code generator for Razor directive attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The name of the directive attribute. + The value of the directive attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this instance. + true if the specified object is equal to this instance; otherwise, false. + The object to compare to this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the code for the directive attribute. + The source span whose content represents the directive attribute to generate. + The context of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the name of the directive attribute. + The name of the directive attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation for this instance. + The string representation for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the value of the directive attribute. + The value of the directive attribute. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the resolve Url code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether this instance and a specified object are equal. + true if and this instance are the same type and represent the same value; otherwise, false. + The object to compare with the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code for the Url. + The target object. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the fully qualified type name of this instance. + The fully qualified type name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a section code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The name of the section code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a block after the section code. + The target to generate. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a block before the section code. + The target to generate. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves the hash code for this current instance. + The hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the section. + The name of the section. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of this current instance. + A string representation of this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a code generator for set base type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The set base type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the set base type. + The set base type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this instance. + true if the specified object is equal to this instance; otherwise, false. + The object to compare to this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the code for this set base type. + The source span that contains the set base type to generate code. + The context of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the hash code for this current instance. + The hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Resolves the given set base type. + The resolved set base type. + The context of the code generator. + The set base type to resolve. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation for this instance. + The string representation for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a code generator that sets layout for the web Razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The layout path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a layout code. + The target where to generate the code. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves a hash code for this current instance. + A hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the path of the layout code. + The path of the layout code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of this current instance. + A string representation of this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the conversion of the SetVBOptionCodeGenerator of the value. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The option name. + true if the object has a value; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Converts the explicitly to the on and off value. + The explicitly converts to the on and off value. + true if the converts to on and off value; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the explicit code Dom option name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code for the specified parameters. + The target. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the option name for the code generator. + The option name for the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Strictly converts the to the on and off value. + The strictly converts to the on and off value. + true if the strictly converts to the on and off value; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the strict code Dom option name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a String that represents the current Object. + A String that represents the current Object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether the has a value. + true if the has a value; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the span code generator for the razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare with the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a code for the specified target and context parameters. + The target span. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a hash code for the span code generator. + A hash code for the span code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a null value for the span code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a code generator for the statement. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this instance. + true if the specified object is equal to this instance; otherwise, false. + The object to compare to this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Generates the code for the statement. + The span source whose content contains the statement to generate. + The context of the code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the hash code for this current instance. + The hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation for this instance. + The string representation for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the template block code generator of the razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code to end the block of the template block code generator. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code to start the block for the template block code generator. + The target block. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a type member code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates code with a given target and context. + The target where to generate the code. + The code generator context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves the hash code for this current instance. + The hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of this code. + A string representation of this code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the razor code generator for VB. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The name of the class. + The root namespace. + The file name of the asset source. + The host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a visitor that executes a callback upon the completion of a visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The delegate for the span visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The delegate for the span visit. + The delegate for the error visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The delegate for the span visit. + The delegate for the error visit. + The delegate for the start block visit. + The delegate for the end block visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The delegate for the span visit. + The delegate for the error visit. + The delegate for the start block visit. + The delegate for the end block visit. + The delegate to execute for the complete event. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the synchronization context for this callback visitor. + The synchronization context for this callback visitor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Executes the visitor callback to visit the end block. + The end block to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Executes the visitor callback to visit the error. + The Razor error to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Executes the visitor callback to visit the span. + The span to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Executes the visitor callback to visit the start block. + The start block to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a C sharp code parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parser accepts the ‘IF’ keyword. + true if the parser accepts the ‘IF’ keyword; otherwise, false. + The keyword to accept. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Asserts a directive code. + The directive code to assert. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code contains ‘AT’ keyword. + true if the code contains ‘AT’ keyword; otherwise, false. + The keyword. + + + Indicates the base type directive. + The no type name error. + The create code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the functions directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the code that handles embedded transition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a helper directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates which class the application will derive the view from, and can therefore ensure proper type checking. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Inherits a directive core. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code is at embedded transition. + true if the code is at embedded transition; otherwise, false. + true to allow templates and comments; otherwise, false. + true to allow transitions; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value that indicates whether the code is nested. + true if the code is nested; otherwise, false. + + + Indicates whether the lines and comments is spacing token. + The function that indicates the spacing token. + true to include new lines; otherwise, false. + true to include comments; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the C sharp language keywords. + The C sharp language keywords. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the specific language for parsing. + The specific language for parsing. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the layout directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Maps the given directives. + The handler. + The directives. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the other parser used for the code. + The other parser used for the code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Spans the output of the parsing before the comment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Blocks the parsing. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the reserved directive. + Determines whether the directive is a top level. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a section directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a session state directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the session state directive core. + + + Indicates the directive for session state type. + The no value error. + The create code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a directive handler. + true if successful; otherwise, false. + The directive. + The handler. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the value of the session state is valid. + true if the value of the session state is valid; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the block for this CSharpCode parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The string name. + The start of the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The CSharp symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the string name for the block. + The string name for the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the source location to start the block. + The source location to start the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the different language characteristics in a CSharp language. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a marker symbol in the code. + A marker symbol in the code. + The source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a symbol in the code. + A symbol in the code. + The source location. + The content value. + The html symbol type. + List of errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a language tokenizer. + A language tokenizer. + The source of the text document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Flips the bracket symbol in the code. + The bracket symbol in the code. + The symbol bracket. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the keyword in the code. + The keyword in the code. + The keyword. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the in the code. + The in the code. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a sample symbol in the code. + A sample symbol in the code. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a sample symbol in the code. + A sample symbol in the code. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the instance for the class. + The instance for the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the different language characteristics in an html. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a marker symbol in the Html. + A marker symbol in the Html. + The source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a symbol in the Html. + A symbol in the Html. + The source location. + The content value. + The html symbol type. + List of errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates an html tokenizer. + An html tokenizer. + The source of the text document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Flips the bracket symbol in the html. + The bracket symbol in the html. + The symbol bracket. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the in the html. + The in the html. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a sample symbol in the html. + A sample symbol in the html. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the instance for the class. + The instance for the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a parser specifically for parsing HTML markup. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Builds the span for the given content using the specified span builder. + The span builder used to build the span. + The start location. + The span content. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the function delegate used to determine the token used for HTML spacing. + The function delegate used to determine the token used for HTML spacing. + true to indicate that new lines are considered as spacing token; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the instance that defines the characteristics of HTML language. + The instance that defines the characteristics of HTML language. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the other parser for parsing HTML markup. + The other parser for parsing HTML markup. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Builds the span before the Razor comment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Parses the next HTML block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Parses the HTML document. + + + Parses a section with markups given by the nesting sequences. + A tuple that specifies the markup nesting sequences. + true to indicate case-sensitive parsing; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Skips the parse until the specified condition is meet. + A function delegate that defines the condition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Skips the parse until the specified HTML symbol type is encountered. + The HTML symbol type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the HTML tags that are considered as void. + The HTML tags that are considered as void. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Provides methods that define the behavior of a Razor code language. + The type of the code tokenizer for the Razor language. + The type for the language symbol. + The enumeration type for the language symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a code language symbol with the specified source location as the start marker. + The symbol for the code language. + The source location as the start marker. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a code language symbol with the specified source location with the specified source location as the start marker. + The symbol for the code language. + The source location as the start marker. + The content. + The enumeration type for the language symbol. + The collection of error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates a Razor code language tokenizer for the specified source document. + A Razor code language tokenizer for the specified source document. + The source document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the opposite bracket symbol for the specified bracket symbol. + The opposite bracket symbol for the specified bracket symbol. + The bracket symbol to flip. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the specific language symbol type for the given symbol type. + The specific language symbol type for the given symbol type. + The symbol type to get. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the actual symbol for the given language symbol type. + The actual symbol for the given language symbol type. + The language symbol type to get. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is a comment body type. + true if the symbol is a comment body type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is a comment star type. + true if the symbol is a comment star type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is a comment start type. + true if the symbol is a comment start type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is an identifier type. + true if the symbol is an identifier type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is a keyword type. + true if the symbol is a keyword type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol type is a known symbol type. + true if the symbol type is a known symbol type; otherwise, false. + The symbol whose type is to be checked. + The known type of the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is a new line type. + true if the symbol is a new line type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is a transition type. + true if the symbol is a transition type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is an unknown type. + true if the symbol is an unknown type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is a whitespace type. + true if the symbol is a whitespace type; otherwise, false. + The symbol to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the symbol is an unknown type. + true if the symbol is an unknown type; otherwise, false. + The known type of the symbol. + + + Splits the content of the code language symbol at the specified index. + A tuple of code language symbol. + The symbol whose content is to be splitted. + The index where the split occurs. + The enumeration type for the language symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Splits the specified string into tokens. + The collection of token. + The string to tokenize. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Splits the specified string into tokens. + The collection of token. + The source location as the start marker for the tokenizer. + The string to tokenize. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the parser base class for the razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Builds a span for the parser base. + The span builder. + The beginning of the source location. + The content. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the . + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether the parser is a markup parser. + true if the parser is a markup parser; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the other parser . + The other parser . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Blocks the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates documentation for the parse. + + + Parses the section in ordered list of the elements. + The pair of nesting sequences. + true if the case is sensitive; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a parser whose context can be switched to either a code or a markup. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The source document. + The code parser for the context. + The markup parser for the context. + The active parser for the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the active parser for the context. + The active parser for the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds the specified span at the end of the block builder stack. + The span to add. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the code parser for the context. + The code parser for the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Parses the last span and returns the parse results that contain the newly built block. + The parse results that contain the newly built block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the current block builder. + The current block builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the current character available from the source. + The current character available from the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets a value that indicates whether the parser is in design mode. + true if the parser is in design mode; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Creates an end block from the last item of the block builder stack. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets a value that indicates whether the source status is end of file. + true if the source status is end of file; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the list of errors during parsing. + The list of errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified block type exists in the block builder list. + true if the specified block type exists in the block builder list; otherwise, false. + The block type to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the last accepted characters. + One of the values of the enumeration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the last span. + The last span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the markup parser for the context. + The markup parser for the context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Occurs when parse encountered error. + The source location. + The error message. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Occurs when parse encountered an error. + The source location. + The error message. + The other information about the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the text reader for the source document. + The text reader for the source document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds a new block builder at the end of the block builder stack and returns a disposable action that returns an end block. + A disposable action that returns an end block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Adds a new block builder at the end of the block builder stack and returns a disposable action that returns an end block. + A disposable action that returns an end block. + The type for the new block builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Alternately switches the code parser or markup parser as the active parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets a value that indicates whether white space is significant to ancestor block. + true is white space is significant to ancestor block; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Provides helper methods for the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a spacing combining mark or a non-spacing mark. + true if the specified character value is a spacing combining mark or a non-spacing mark; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a connector punctuation. + true if the specified character value is a connector punctuation; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a decimal digit number. + true if the specified character value is a decimal digit number; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is valid for use in email address. + true if the specified character value is valid for use in email address; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is used for formatting text layout or formatting text operation. + true if the specified character value is used for formatting text layout or formatting text operation.; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a hexadecimal digit number. + true if the specified character is a hexadecimal digit number; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified string value is an identifier. + true if the specified string value is an identifier; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified string value is an identifier. + true if the specified string value is an identifier; otherwise, false. + The value to check. + true to require that the identifier starts with a letter or underscore (_); otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is valid for use in identifier. + true if the specified character is valid for use in identifier; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is valid for use as start character of an identifier. + true if the specified character value is valid for use as start character of an identifier; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a letter. + true if the specified character is a letter; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a letter or a decimal digit number. + true if the specified character is a letter or a decimal digit number; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified value is a newline. + true if the specified character is a newline; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified value is a newline. + true if the specified character is a newline; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a terminating character token. + true if the specified character value is a terminating character token; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a terminating quoted string. + true if the specified character value is a terminating quoted string; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a whitespace. + true if the specified character value is a whitespace; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified character value is a whitespace or newline. + true if the specified character value is a whitespace or newline; otherwise, false. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Sanitizes the specified input name to conform as a valid value for class name. + The sanitized class name. + The value to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a parser visitor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the cancellation token. + The cancellation token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates that a visitor method has completed execution. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the specified block. + The block to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the specified black after parsing. + The block to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the given razor error. + The error to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the specified span. + The span to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Visits the specified block before parsing. + The block to visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Provides extension methods for parser visitor. + + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a Razor parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The code parser. + The markup parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a task that parses a specified object. + The created . + The object to parse. + The span callback. + The error callback. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a task that parses a specified object. + The created . + The object to parse. + The span callback. + The error callback. + The cancellation token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a task that parses a specified object. + The created . + The object to parse. + The span callback. + The error callback. + The context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a task that parses a specified object. + The created . + The object to parse. + The span callback. + The error callback. + The context. + The cancellation token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a task that parses a specified object. + The created . + The object to parse. + The consumer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the design time mode. + The design time mode. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the specified object. + The parser result. + The object to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the specified object. + The object to parse. + The visitor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the specified object. + The parser result. + The object to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the specified object. + The parser result. + The object to parse. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the specified object. + The object to parse. + The visitor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a tokenizer backed parser. + The type of tokenizer. + The type of symbol. + The type of SymbolType. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the list of symbols + The list of symbols. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the specified symbol. + The symbol to accept. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parser accepts all types of tokenizer. + true of the parser accepts all types of tokenizer; otherwise, false. + The types. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parser accepts and moves to the next tokenizer. + true if the parser accepts and moves to the next tokenizer; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parser accepts single whitespace character. + true if the parser accepts single whitespace character; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts token until a token of the given type is found. + The type of the token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts token until a token of the given type is found and it will backup so that the next token is of the given type. + The type of the first token. + The type of the second token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the given tokens until a token of the given type is found. + The type of the first token. + The type of the second token. + The type of the third token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts token until a token of the given types is found. + The types of the token. + + + Accepts token while the condition has been reached. + The condition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the token while a token of the given type is not found. + The type of the token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts token while the token of the given type has been reached. + The type of the first token. + The type of the second token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts token while the token of the given type has been reached. + The type of the first token. + The type of the second token. + The type of the third token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts token while the token of the given types has been reached. + The types. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parser accepts whitespace in lines. + true if the parser accepts whitespace in lines; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds a marker symbol if necessary. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds a marker symbol if necessary. + The location where to add the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the token is at the specified type. + true if the token is at the specified type; otherwise, false. + The type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the token is at the specified identifier. + true if the token is at the specified identifier; otherwise, false. + true to allow keywords; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parsing is balance. + true if the parsing is balance; otherwise, false. + The balancing mode. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parsing is balance. + true if the parsing is balance; otherwise, false. + The balancing mode. + The left parse. + The right parse. + The start of the mode. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Builds a specified span. + The span to build. + The start location to build the span. + The content of the span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Configures the span. + The configuration. + + + Configures the span. + The configuration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current location of the current instance. + The current location of the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current symbol of this instance. + The current symbol of this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value indicating whether the tokenizer is in the end of file. + true if the tokenizer is in the end of file; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether to ensure the current parser. + true if to ensure the current parser; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the expected token with the given type. + The type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the expected token with the given types. + The types. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Handles the embedded transition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a specified span. + The span to initialize. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether this instance is at embedded transition. + true if this instance is at embedded transition; otherwise, false. + true to allow templates and comments; otherwise, false. + true to allow transitions; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the language used for parsing. + The language used for parsing. + + + Determines whether the token with the given condition would pass. + true if the token with the given condition would pass; otherwise, false. + The condition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the token with the given type would pass. + true if the token with the give type would pass; otherwise, false. + The type of the token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the token with the given types would pass. + true if the token with the given types would pass; otherwise, false. + The types. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the parser advances to the next token. + true if the parser advances to the next token; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether parsing a token with the given type is optional. + true if parsing a token with the given type is optional; otherwise, false. + The type of the token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether parsing a token with the given type is optional. + true if parsing a token with the given type is optional; otherwise, false. + The type of the token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Outputs a token with accepted characters. + The accepted characters. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Outputs a token with span kind. + The span kind. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Outputs a token with a given span kind and accepted characters. + The span kind. + The accepted characters. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Outputs a span before the razor comment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code..Gets the previous symbol of this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Pushes the span configuration. + An that shuts down the configuration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Pushes the span configuration. + An that shuts down the configuration. + The new configuration. + + + Pushes the span configuration. + An that shuts down the configuration. + The new configuration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Puts the transition back. + The symbols. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Puts the transition back. + The symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Puts the current transition back. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Displays the razor comment. + + + Reads a token while the condition is not reached. + The token to read. + The condition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the expected token is required. + true if the expected token is required; otherwise, false. + The expected token. + true to display an error if not found; otherwise, false. + The error base. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the associated with this instance. + The associated with this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the span configuration. + The span configuration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the tokenizer. + The tokenizer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the token with the given type was parsed. + true if the token with the given type was parsed; otherwise, false. + The type of the token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a Visual Basic code parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts spaces in the VB code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Checks for a condition and displays a keyword in the code. + The keyword. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Asserts the given directive. + The directive to assert. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the directive is ‘AT’ directive. + true if the directive is an ‘AT’ directive; otherwise, false. + The directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the given keyword is ‘AT’. + true if the given keyword is ‘AT’; otherwise, false. + The keyword. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Ends a terminated directive. + The function that ends the terminated directive. + The directive. + The block type. + The code generator. + true to allow markup; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the termination of directive body is ended. + true if the termination of directive body is ended; otherwise, false. + The directive. + The block start. + true to allow all transitions; otherwise, false. + + + Ends a termination of statement. + The function that ends the termination. + The keyword. + true if the termination supports exit; otherwise, false. + true if the termination supports continue; otherwise, false. + + + Ends a termination of statement. + The function that ends the termination. + The keyword. + true if the termination supports exit; otherwise, false. + true if the termination supports continue; otherwise, false. + The block name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Handles the embedded transition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Handles the embedded transition. + The last white space. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the code that handles the Exit or Continue keyword. + The keyword. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a code that handles a transition. + The last white space. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether the code is a helper directive. + true if the code is a helper directive; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code imports a statement. + true if the code imports a statement; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code inherits a statement. + true if the code inherits a statement; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code is at embedded transition. + true if the code is at embedded transition; otherwise, false. + true to allow templates and comments; otherwise, false. + true to allow transitions; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code is directive defined. + true if the code is directive defined; otherwise, false. + The directive. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the keywords associated with the code. + The keywords associated with the code. + + + Indicates a keyword that terminates a statement. + The function that terminates the statement. + The start. + The terminator. + true if the termination supports exit; otherwise, false. + true if the termination supports continue; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the language for the parser. + The language for the parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code is a layout directive. + true if the code is a layout directive; otherwise, false. + + + Maps a given directive. + The directive. + The action whether to map a given directive. + + + Maps a given keyword. + The keyword. + The action whether to map a given keyword. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a nested block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the keyword from the code is optional. + true if the keyword from the code is optional; otherwise, false. + The keyword. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code is an option statement. + true if the code is an option statement; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the other parser. + The other parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the parser block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the parser block. + The start sequence. + The end sequence. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Spans the output before Razor comment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Blocks the parsing. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Reads a list of Visual Basic spaces. + A list of Visual Basic spaces. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the expected symbol is required. + true if the expected symbol is required; otherwise, false. + The expected symbol. + The error base. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code is a reserved word. + true if the code is a reserved word; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code is a section directive. + true if the code is a section directive; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the code has a session state directive. + true if the code has a session state directive; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the characteristics of the Visual Basic language. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a Visual Basic marker symbol. + The created Visual Basic marker symbol. + The location to create the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a Visual Basic symbol. + The created . + The location to create the symbol. + The content. + The type of the symbol. + The errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a Visual Basic tokenizer. + The created . + The source where to create the tokenizer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Flips the given bracket. + The type of the Visual Basic symbol. + The bracket to flip. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves the type of the known symbol. + The type of the known symbol. + The type to retrieve. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a sample symbol with the given type. + A sample symbol with the given type. + The type of the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets an instance of this . + An instance of . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the auto-complete editing handler class. + + + Initializes a new instance of the class. + The tokenizer. + + + Initializes a new instance of the class. + The tokenizer. + The accepted characters. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value that indicates whether the auto-complete function is at the end of this span. + true if the auto-complete function is at the end of this span; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a string value to auto-complete. + A string value to auto-complete. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a parse result that can accept changes. + The phase of the target. + The normalized . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether this instance and a specified object are equal. + true if and this instance are the same type and represent the same value; otherwise, false. + The object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the fully qualified type name of this instance. + A String containing a fully qualified type name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the block for creating webpages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source for the block builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the parser visitor of the block. + The parser visitor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a collection of SyntaxTreeNode to view the children of the block. + A collection of SyntaxTreeNode to view the children of the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the IBlockCodeGenerator to generate codes for the elements. + The IBlockCodeGenerator to generate codes for the elements. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current block. + true if the specified object is equal to the current block; otherwise, false. + The object to compare with the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a value indicating whether the block is equivalent to the same element. + true if the block is equivalent to the same element; otherwise, false. + The syntax tree node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Finds the first descendent span of the block. + The first descendent span of the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Finds the last descendent span of the block. + The last descendent span of the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Flattens a collection of a specified type for the block. + A collection of a specified type for the block to flatten. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether the object is a block-level object. + true if the object is a block-level object; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the length value of the block. + The length value of the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Locates the owner of the block. + The owner of the block to locate. + The text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the string name of the block. + The string name of the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the start to identify the specific location of the block. + The start to identify the specific location of the block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string that represents the current object. + A string that represents the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the type of code block. + The type of code block. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the block builder for the webpages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The original block builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Builds a block for this instance. + A block builds for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the collection of child elements of the block builder. + The collection of child elements of the block builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the code generator for the block builder. + The code generator for the block builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the string name for the block builder. + The string name for the block builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Resets the block builder to its original position. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a block type that can be assigned null. + A block type that can be assigned null. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a parsing error in Razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The error message. + The absolute index of the source location. + The line index of the source location. + The column index of the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The error message. + The absolute index of the source location. + The line index of the source location. + The column index of the source location. + The length for the error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The error message. + The source location of the error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The error message. + The source location of the error. + The length for the error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this instance. + true if the specified object is equal to this instance; otherwise, false. + The object to compare to this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this instance. + true if the specified object is equal to this instance; otherwise, false. + The object to compare to this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the hash code for the current instance. + The hash code for the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the length for the error. + The length for the error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the source location of the error. + The source location of the error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the error message. + The error message. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation of this error instance. + The string representation of this error instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Represents a Razor parse tree node that contains the all the content of a block node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The builder to use for this span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Accepts visit from the specified visitor. + The object that performs the visit. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Changes the span builder for this span. + A delegate that will be executed along with this change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Sets the start character location of this span. + The new start location to set for this span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the code generator for the span. + The code generator for the span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the content of the span. + The content of the span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the handler for span edits. + The handler for span edits. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified object is equal to this span. + true if the specified object is equal to this span; otherwise, false. + The object to compare to this span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Determines whether the specified node is equivalent to this span. + true if the specified node is equal to this span; otherwise, false. + The node to compare with this span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the hash code for this current span. + The hash code for this current span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets a value that indicates whether this node is a block node. + false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the kind for this span. + One of the values of the enumeration. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the length of the span content. + The length of the span content. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the next span in the tree node. + The next span in the tree node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the previous span in the tree node. + The previous span in the tree node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Replaces the span builder for this span with the specified span builder. + The new builder to use for this span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the start character location of the span. + The start character location of the span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the symbols used to generate the code for the span. + The symbols used to generate the code for the span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the string representation of this current span. + The string representation of this current span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the span builder for the syntax tree. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The original span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the given symbol for the span builder. + The symbol builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Builds a span builder for this instance. + A span builder for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Clears the symbols of the span builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the span code generator. + The span code generator. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the span edit handler of the builder. + The span edit handler of the builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the span kind of the span builder. + The span kind of the span builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Resets the span builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the source location of the span builder. + The source location of the span builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the symbols for a generic read-only collection. + The symbols for a generic read-only collection. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the node for the syntax tree. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the visitor of the tree node. + The parser visitor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether the syntax tree node is equivalent to given node. + true the syntax tree node is equivalent to given node; false. + The given node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether the syntax tree node is a block-level object. + true if the syntax tree node is a block-level object; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the length of the syntax tree node. + The length of the syntax tree node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the parent tree node of the current tree node. + The parent tree node of the current tree node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the specific source location for the syntax tree node. + The specific source location for the syntax tree node. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Provides a lookahead buffer for the text reader. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The text reader for the buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Begins the lookahead buffering operation for this . + A disposable action that ends the lookahead buffering. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Discards the backtrack context associated the lookahead buffering operation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets the current character in the buffer. + The current character in the buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Gets or sets the current location of the character in the buffer. + The current location of the character in the buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Releases the unmanaged resources used by the current instance of this class, and optionally releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Reads the next character from the text reader and appends it to the lookahead buffer. + true if a character was read from the text reader; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Advances the buffer position to the next character. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the current character in the buffer. + The current character in the buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Returns the current character from the buffer and advances the buffer position to the next character. + The current character from the buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a location tagged. + The type of the location tagged. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The value of the source. + The offset. + The line. + The column location of the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The value of the source. + The location of the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for the current instance. + The hash code for the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the location of the source. + The location of the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two object are equal. + true if the two object are equal; otherwise, false. + The first object to compare. + The second object to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Converts the specified value to a object. + true if successfully converted; otherwise, false. + The value to convert. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two object are not equal. + true if the two object are not equal; otherwise, false. + The first object to compare. + The second objet to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of the current instance. + The string that represents the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of the current instance. + A string that represents the current instance. + The format. + The format provider. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the value of the source. + The value of the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the token to look for the razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The action to cancel. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the token. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Releases the resources used by the current instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Releases the unmanaged resources used by the and optionally releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a reader + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source reader. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The string content. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The text buffering. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the length of the text to read. + The length of the text to read. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the source of location for the text reader. + The source of location for the text reader. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Reads the next character without changing the state of the reader or the character source. + An integer representing the next character to be read. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the position to seek the text reader. + The position to seek the text reader. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Reads the next character from the text reader and advances the character position by one character. + The next character from the text reader, or -1 if no more characters are available. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The absolute index. + The line index. + The character index. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the absolute index for the source location. + The absolute index for the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds the two object. + The sum of the two object. + The first object to add. + The second object to add. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Advances the specified object to the given location. + The source location. + The location where to advance the object. + The text that advances to the given location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the character index for the source location. + The character index for the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Compares current object to the other object. + The value of the objects compared. + The object to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the current object is equal to the other object. + true if the current object is equal to the other object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + The hash code for this instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the line index for the source location. + The line index for the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds the two object. + The that is the sum of the two object. + The object to add. + The object to add. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two objects are equal. + true if the two objects are equal; otherwise, false. + The first object to compare. + The second object to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the first object is greater than the second object. + true if the first object is greater than the second object; otherwise, false. + The first object. + The second object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two object are not equal. + true if the two objects are not equal; otherwise, false. + The object to compare. + The object to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the first object is less than the second object. + true if the first object is greater than the second object; otherwise, false. + The first object. + The second object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + Returns . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Subtracts the first object to the second object. + The difference of the two objects. + The first object. + The second object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of the source location. + A string representation of the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Provides a source location tracker. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The current location of the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Calculates the new location of the source. + The new source location. + The last position. + The new content. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the current location of the source. + The current location of the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Updates the source location. + The character to read. + The character to update. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Updates the location of the source. + The object. + The content of the source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Provides a reader for text buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The text buffer to read. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Begins reading the current text buffer. + An instance that stops the text buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Cancels backtrack. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current location of the text buffer. + The current location of the text buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Releases the unmanaged resources used by the class and optionally releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the next text buffer to read. + The next text buffer to read. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Reads the current text buffer. + The current text buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Describes a text change operation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The position of the text change in the snapshot immediately before the change. + The length of the old text. + An old text buffer. + The position of the text change in the snapshot immediately after the change. + The length of the new text. + A new text buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Applies the specified text change. + A string that contains the value of the text. + The content of the text. + The change offset. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Applies the specified text change. + A string that contains the value of the text. + The span of the text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the hash code for this text change. + The hash code for this text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether this text change is a delete. + true if this text change is a delete; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether this text change is an insert. + true if this text change is an insert; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether this text change is a replace. + true if this text change is a replace; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a new text buffer. + A new text buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the length of the new text. + The length of the new text. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the position of the text change in the snapshot immediately after the change. + The position of the text change in the snapshot immediately after the change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the text that replaced the old text. + The text that replaced the old text. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a normalized value of this text change. + A normalized value of this text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets an old text buffer. + An old text buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the length of the old text. + The length of the old text. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the position of the text change in the snapshot immediately before the change. + The position of the text change in the snapshot immediately before the change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the text that was replaced. + The text that was replaced. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two text change are equal. + true if the two text change are equal; otherwise, false. + The left text change. + The right text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two text change are not equal. + true if the two text change are not equal; otherwise, false. + The left text change. + The right text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of the text change. + A string representation of the text change. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Provides reader for text document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source to read. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the length of the document. + The length of the document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the location of the document. + The location of the document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the next text document to read. + The next text document to read. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the position of the text document. + The position of the text document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Reads a specified text document. + The text document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Provides helper functions for the CSharp tokenizer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified character can be used for identifier. + true if the specified character can be used for identifier; otherwise, false. + The character to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified character can be used as an identifier start character. + true if the specified character can be used as an identifier start character; otherwise, false. + The character to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified character is a literal suffix for real numbers. + true if the specified character is a literal suffix for real numbers; otherwise, false. + The character to check. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a CSharp tokenizer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a CSharp tokenizer symbol. + A CSharp tokenizer symbol. + The beginning of the source location. + The contents. + The CSharp symbol type. + A collection of razor errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the star type of the . + The star type of the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the razor comment transition type for the . + The razor comment transition type for the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the razor comment type for the . + The razor comment type for the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the state of the machine. + The state of the machine. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the html tokenizer of the razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source for the text document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a symbol for the specified parameters of the html tokenizer. + A symbol to create for the specified parameters of the html tokenizer. + The source location. + The content string. + The type of html symbol. + The razor errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the html symbols for the razor comment star type. + The html symbols for the razor comment star type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the html symbols for the razor comment transition type. + The html symbols for the razor comment transition type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the html symbols for the razor comment type. + The html symbols for the razor comment type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the start of the state machine for the html. + The start of the state machine for the html. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The type for the language symbol. + The enumeration type for the language symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a result after the razor comment transition. + The result. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the lookahead buffer contains the expected string. + true if the lookahead buffer contains the expected string; otherwise, false. + The string to check. + true to indicate comparison is case sensitive; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the buffer for the tokenizer. + The buffer for the tokenizer. + + + Returns a function delegate, that accepts a character parameter and returns a value that indicates whether the character parameter is equal to specified character or white space. + A function delegate. + The character used to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a language symbol type for the tokenizer with the specified content. + A language symbol type for the tokenizer. + The start of the source location. + The content value. + The symbol type. + The razor error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current character in the tokenizer. + The current character. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a list of the current razor errors. + A list of the current errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current source location. + The current source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current start of the source location. + The current start of the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value whether the tokenizer current location is at the end of the file. + true if the tokenizer current location is at the end of the file; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the language end symbol type used by the tokenizer. + The language end symbol type. + The start of the source location. + The enumeration type for the language symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the language end symbol type used by the tokenizer. + The language end symbol type. + The enumeration type for the language symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value whether the tokenizer have content. + true if the tokenizer have content; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Reads to the next character from the code reader. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Shows the next symbol to be used. + The next symbol to be used. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Reads the next symbol in the code. + The next symbol to read. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Parses the Razor comment body. + The object that represent the state of the result. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the star type for the razor comment. + The star type for the razor comment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the transition type for the razor comment. + The transition type for the razor comment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the type of razor comment. + The type of razor comment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Sets the tokenizer status to its initial state. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Resumes using the previous language symbol type. + The previous language symbol type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Uses a single type of symbol. + A single type of symbol. + The type of symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the source of the text document. + The source of the source document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the start symbol used in this class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the next language symbol type. + The next language symbol type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Takes the string if found in the lookahead buffer into the tokenizer buffer. + true if the lookahead buffer contains the expected string; otherwise, false. + The string to match. + true to indicate comparison is case sensitive; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the current character into the buffer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Accepts the given input string into the buffer. + true if the whole input string was accepted; false, if only a substring was accepted. + The input string. + true to indicate comparison is case sensitive; otherwise, false. + + + Parses the source document until the condition specified by predicate is met or end file is reached. + true if the predicate condition is met; false if end of file is reached. + The predicate that specifies the processing condition. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the specified parameters for the tokenizer view. + The type tokenizer. + The type symbol. + The token symbol type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The tokenizer view. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the current view of the TSymbol. + The current view of the TSymbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether the view can reach the end of a file. + true if the view can reach the end of a file; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the tokenizer moves to the next view. + true if the tokenizer moves to the next view; false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Puts a specified symbol into the tokenizer view. + The symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the source of the text document for the tokenizer view. + The source of the text document for the tokenizer view. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the tokenizer to view the symbols for the razor. + The tokenizer to view the symbols for the razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a set of characters as helpers in VB. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a value whether a specified character is enclosed in double quotation marks ("). + true if the character is enclosed in double quotation marks ("); otherwise, false. + The character. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a value whether a character is in octal digit. + true if a character is in octal digit; otherwise, false. + The character. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a value whether a specified character is enclosed in a single quotation mark ('). + true if the character is enclosed in a single quotation mark ('); otherwise, false. + The character. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Allows an application to break a VB symbol into tokens. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source of text. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a domain of symbols. + A domain of symbols. + The source location. + The content value. + The . + The razor error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the VB symbol type. + The VB symbol type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the transition style of the VB symbol. + The transition style of the VB symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the razor type comment of the . + The razor type comment of the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the start state of the machine. + The start state of the machine. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a C sharp symbol for the razor tokenizer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The symbol’s offset. + The line. + The column + The content of the symbol. + The type of the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The symbol’s offset. + The line. + The column + The content of the symbol. + The type of the symbol. + A list of errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The location to start the symbol. + The content of the symbol. + The type of the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The location to start the symbol. + The content of the symbol. + The type of the symbol. + A list of errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value that indicates whether the symbol has an escaped identifier. + true if the symbol has an escaped identifier; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this current instance. + The hash code for this current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the language keyword. + The language keyword. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the Html symbols. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The location of the symbol. + The exact line the symbol is found. + The column number the symbol is found. + The content value. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The location of the symbol. + The exact line the symbol is found. + The column number the symbol is found. + The content value. + The . + The razor error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The start of the source location. + The content value. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The start of the source location. + The content value. + The . + The razor error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents an interface for the web razor symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Changes the location of the symbol. + The new location of the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the content of the symbol. + The content of the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the starting offset of the symbol. + The location where to start the document. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the location of the symbol. + The location of the symbol. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a new instance of symbols. + The generic type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The source location. + The content value. + The type. + The razor error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Changes the start of the machine. + The new start. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the content of a . + The content of a . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified Object is equal to the current Object. + true if the specified Object is equal to the current Object; otherwise, false. + The object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the razor error. + The razor error. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves a hash code based on the current object. + A hash of the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Starts the time’s offset for the source location. + The document start. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the starting point of the source location. + The starting point of the source location. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates a string representation of the current object. + A string representation of the current object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a Type that inherits from the base Type. + A Type that inherits from the base Type. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the symbol extensions for the web tokenizer. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the content of this class. + The content of this class. + The symbols to provide. + The starting index of the span. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the content of this class. + The content of this class. + The intersection with the given span. + + + Gets the content of this class. + The content of this class. + The intersection with the given span. + A list of chosen symbols. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the content of this class. + The content of this class. + The provided symbols. + + + Enumerates the list of Visual Basic keywords. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the VB symbol components. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The offset value. + The line value. + The column value. + The content String value. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The offset value. + The line value. + The column value. + The content String value. + The . + List of razor errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The start of the source location. + The content String value. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The start of the source location. + The content String value. + The . + List of razor errors. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a value whether the current object is equal to the new object. + true if the current object is equal to the new object; otherwise, false. + The object to compare. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the hash code for this instance. + The hash code to return. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the specified data sample from the object. + The specified data sample from the object. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the keyword used in the VB. + The keyword used. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.Web.Optimization.1.1.3/Microsoft.AspNet.Web.Optimization.1.1.3.nupkg b/packages/Microsoft.AspNet.Web.Optimization.1.1.3/Microsoft.AspNet.Web.Optimization.1.1.3.nupkg new file mode 100644 index 0000000..5ad1235 Binary files /dev/null and b/packages/Microsoft.AspNet.Web.Optimization.1.1.3/Microsoft.AspNet.Web.Optimization.1.1.3.nupkg differ diff --git a/packages/Microsoft.AspNet.Web.Optimization.1.1.3/lib/net40/System.Web.Optimization.dll b/packages/Microsoft.AspNet.Web.Optimization.1.1.3/lib/net40/System.Web.Optimization.dll new file mode 100644 index 0000000..393d416 Binary files /dev/null and b/packages/Microsoft.AspNet.Web.Optimization.1.1.3/lib/net40/System.Web.Optimization.dll differ diff --git a/packages/Microsoft.AspNet.Web.Optimization.1.1.3/lib/net40/system.web.optimization.xml b/packages/Microsoft.AspNet.Web.Optimization.1.1.3/lib/net40/system.web.optimization.xml new file mode 100644 index 0000000..1bfd64c --- /dev/null +++ b/packages/Microsoft.AspNet.Web.Optimization.1.1.3/lib/net40/system.web.optimization.xml @@ -0,0 +1,666 @@ + + + + System.Web.Optimization + + + + Represents a list of file references to be bundled together as a single resource. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The virtual path used to reference the from within a view or Web page. + + + Initializes a new instance of the class. + The virtual path used to reference the from within a view or Web page. + An alternate url for the bundle when it is stored in a content delivery network. + + + Initializes a new instance of the class. + The virtual path used to reference the from within a view or Web page. + An alternate url for the bundle when it is stored in a content delivery network. + A list of objects which process the contents of the bundle in the order which they are added. + + + Initializes a new instance of the class. + The virtual path used to reference the from within a view or Web page. + A list of objects which process the contents of the bundle in the order which they are added. + + + + Builds the bundle content from the individual files included in the object. + The object used to build the bundle content. + + + Overrides this to implement own caching logic. + A bundle response. + The bundle context. + + + Script expression rendered by the helper class to reference the local bundle file if the CDN is unavailable. + The script expression rendered by the helper class to reference the local bundle file if the CDN is unavailable. + + + Gets or sets an alternate url for the bundle when it is stored in a content delivery network. + An alternate url for the bundle when it is stored in a content delivery network. + + + The token inserted between bundled files to ensure that the final bundle content is valid. + By default, if is not specified, the Web optimization framework inserts a new line. + + + Specifies whether to use the . + true if the is used; otherwise, false. + + + Generates an enumeration of objects that represent the contents of the bundle. + An enumeration of objects that represent the contents of the bundle. + The object that contains state for both the framework configuration and the HTTP request. + + + Processes the bundle request to generate the response. + A object containing the processed bundle contents. + The object that contains state for both the framework configuration and the HTTP request. + + + + + Specifies a set of files to be included in the . + The object itself for use in subsequent method chaining. + The virtual path of the file or file pattern to be included in the bundle. + + + Includes all files in a directory that match a search pattern. + The object itself for use in subsequent method chaining. + The virtual path to the directory from which to search for files. + The search pattern to use in selecting files to add to the bundle. + + + Includes all files in a directory that match a search pattern. + The object itself for use in subsequent method chaining. + The virtual path to the directory from which to search for files. + The search pattern to use in selecting files to add to the bundle. + Specifies whether to recursively search subdirectories of . + + + Determines the order of files in a bundle. + The order of files in a bundle. + + + Virtual path used to reference the from within a view or Web page. + The virtual path. + + + Transforms the contents of a bundle. + The list of transforms for the bundle. + + + + Contains and manages the set of registered objects in an ASP.NET application. + + + Initializes a new instance of the class. + + + Adds a bundle to the collection. + The bundle to add. + + + Adds the default file extension replacements for common conventions. + The list to populate with default values. + + + Adds default file order specifications to use with bundles in the collection. + The list to populate with default values. + + + Adds the default file ignore patterns. + The ignore list to populate with default values. + + + Removes all bundles from the collection. + + + Gets the count of registered bundles in the collection. + The number of bundles. + + + Gets a list of file patterns which are ignored when including files using wildcards or substitution tokens. + A list of file patterns. + + + Gets the file extension replacement list. + The file extension replacement list. + + + Gets a list that specifies default file orderings to use for files in the registered bundles. + The list of file orderings. + + + Returns a bundle in the collection using the specified virtual path. + The bundle for the virtual path or null if no bundle exists at the path. + The virtual path of the bundle to return. + + + Returns the bundle enumerator. + The bundle enumerator. + + + Returns the collection of all registered bundles. + The collection of registered bundles. + + + Gets the list of files to ignore. + The list of files to ignore. + + + Removes a bundle from the collection. + true if the bundle was removed; otherwise, false. + The bundle to remove. + + + Clears the bundles and resets all the defaults. + + + Returns the bundle URL for the specified virtual path. + The bundle URL or null if the bundle cannot be found. + The bundle virtual path. + + + Returns the bundle URL for the specified virtual path, including a content hash if requested. + The bundle URL or null if the bundle cannot be found. + The virtual path of the bundle. + true to include a hash code for the content; otherwise, false. The default is true. + + + Returns an enumerator that can be used to iterate through the collection. + An that can be used to iterate through the collection. + + + Returns an enumerator that can be used to iterate through the collection. + An that can be used to iterate through the collection. + + + Gets or sets whether the collection will try to use if specified. + true if the collection will try to use Bundle.CdnPath if specified; Otherwise, false. + + + Encapsulates the info needed to process a bundle request + + + Initializes a new instance of the class. + The context. + The collection of bundles. + The virtual path of the bundles. + + + Gets or sets the collection of bundles. + The collection of bundles. + + + Gets or sets the virtual path for the bundle request + The virtual path for the bundle request. + + + Gets or sets whether the instrumentation output is requested. + true if instrumentation output is requested; otherwise, false. + + + Gets or sets whether optimizations are enabled via . + true if optimizations are enabled via ; otherwise, false. + + + Gets or sets the HTTP context associated with the bundle context. + The HTTP context associated with the bundle context. + + + Gets or sets whether the bindle context will store the bundle response in the HttpContext.Cache. + true if the bindle context will store the bundle response in the cache; Otherwise, false. + + + Represents a bundle definition as specified by the bundle manifest. + + + Initializes a new instance of the class. + + + Gets or sets the CDN fallback expression for the bundle. + The CDN fallback expression for the bundle. + + + Gets or sets the CDN path for the bundle. + The CDN path for the bundle. + + + Gets the files included in the bundle. + The files included in the bundle. + + + Gets or sets the virtual path for the bundle. + The virtual path for the bundle. + + + + + + + + + + Encapsulates a named set of files with relative orderings, for example jquery or modernizer. + + + Initializes a new instance of the class. + The name used to help identify the file ordering. + + + Gets or sets the ordered list of file name patterns (allows one prefix/suffix wildcard '*') that determines the relative ordering of these files in the bundle. For example, ["z.js", "b*", "*a", "a.js"]. + The ordered list of file name patterns that determines the relative ordering of these files in the bundle. + + + Gets or sets the name used to help identify the file ordering, for example, jquery. + The name used to help identify the file ordering. + + + Represents the XML configuration to configure the bundle collection. + + + Gets or sets the path to the bundle manifest file that sets up the . + The path to the bundle manifest file that sets up the . + + + Reads the bundle manifest using the default bundle configuration. + The bundle manifest. + + + Reads the bundle manifest from a given stream. + The bundle manifest. + The bundle stream to read from. + + + Gets the objects specified by the manifest file. + The objects specified by the manifest file. + + + Gets or sets the registered style bundles. + The registered style bundles. + + + Represents a module that enables bundling to intercept requests to bundle URLs. + + + Initializes a new instance of the class. + + + Disposes any resources used by the class. + + + Hooks the OnApplicationPostResolveRequestCache event to remap to the bundle handler. + The application that will receive the registration of the event. + + + Calls the Dispose() method. + + + Calls the Init method. + The application that will receive the registration of the event. + + + Represents a class that determine if a script reference is a bundle, and what it contains to prevent duplicate script references. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with the specified bundle. + The bundles of objects. + + + Initializes a new instance of the class with the specified bundle and context. + The bundles of object. + The HttpContextBase. + + + Gets or sets the ScriptManager that reflects against . + The ScriptManager that reflects against . + + + Returns an enumeration of actual file paths to the contents of the bundle. + The actual file paths to the contents of the bundle. + The virtual file path. + + + Gets the versioned url for the bundle or returns the virtualPath unchanged if it does not point to a bundle. + The versioned url for the bundle. + The virtual file path. + + + Determines if the virtualPath is to a bundle. + The virtualPath. + The virtual file path. + + + Encapsulates the response data that will be sent for a bundle request. + + + Initializes a new instance of the class. + + + + Gets or sets a value that is used to set the Cache-Control HTTP header. + A value that is used to set the Cache-Control HTTP header. + + + Gets or sets the content of the bundle which is sent as the response body. + The content of the bundle. + + + Gets or sets the media type that is sent in the HTTP content/type header. + The media type that is sent in the HTTP content/type header. + + + Gets or sets the list of files in the bundle. + The list of files in the bundle. + + + Static holder class for the default bundle collection. + + + Gets the default bundle collection. + The default bundle collection. + + + Gets or sets whether bundling and minification of bundle references is enabled. + true if bundling and minification of bundle references is enabled; otherwise, false. + + + Gets or sets the provider to be used in resolving bundle files. + The provider to be used in resolving bundle files. + + + Represents a that does CSS minification. + + + Initializes a new instance of the class. + + + Transforms the bundle contents by applying CSS minification. + The bundle context. + The bundle response object + + + + + + Represents the default logic which combines files in the bundle. + + + Initializes a new instance of the class. + + + + Default which orders files in a bundled using . + + + Initializes a new instance of the class. + + + + Represents a object that ASP.NET creates from a folder that contains files of the same type. + + + Initializes a new instance of the class. + The path suffix. + The search pattern. + + + Initializes a new instance of the class. + The path suffix. + The search pattern. + The search subdirectories. + + + Initializes a new instance of the class. + The path suffix. + The search pattern. + The search subdirectories. + The transform parameter. + + + Initializes a new instance of the class. + The path suffix. + The search pattern. + The transform parameter. + + + Gets or set the path of a Content Delivery Network (CDN) that contains the folder bundle. + The path of a Content Delivery Network (CDN) + + + Returns all the base methods files and any dynamic files found in the requested directory. + All the base methods files and any dynamic files found in the requested directory. + The bundle context. + + + Gets or sets the search pattern for the folder bundle. + The search pattern for the folder bundle. + + + Gets or sets whether the search pattern is applied to subdirectories. + true if the search pattern is applied to subdirectories; otherwise, false. + + + A set of file extensions that will be used to select different files based on the . + + + Initializes a new instance of the class. + + + Adds a file extension which will be applied regardless of . + File extension string. + + + Add a file extension for a specified . + File extension string. + + in which to apply the file extension replacement. + + + Clears file extension replacements. + + + + Specifies the building of the bundle from the individual file contents. + + + + Defines methods for ordering files within a . + + + + Represents an interface used to query the BundleCollection for metadata. + + + Returns a list of all the virtualPaths of the contents of the bundle. + The list of virtual path. + The virtual path for the bundle. + + + Returns the versioned URL of the bundle. + The versioned URL of the bundle. + The virtual path. + + + Specifies whether the virtual path is to a bundle. + true if the virtual path is to a bundle; Otherwise, false. + The virtual path. + + + Defines a method that transforms the files in a object. + + + Transforms the content in the object. + The bundle context. + The bundle response. + + + A list of filename patterns to be ignored and thereby excluded from bundles. + + + Initializes a new instance of the class. + + + Clears entire ignore list. + + + + Ignores the specified pattern regardless of the value set in . + The ignore pattern. + + + Ignores the specified pattern when in the appropriate . + The ignore pattern. + The in which to apply the ignore pattern. + + + Determines whether a file should be ignored based on the ignore list. + true if the filename matches a pattern in the ; otherwise, false. + The object that contains state for both the framework configuration and the HTTP request. + The name of the file to compare with the ignore list. + + + + + Represents a BundleTransform that does CSS Minification. + + + Initializes a new instance of the class. + + + Transforms the bundle contents by applying javascript minification. + The context associated with the bundle. + The . + + + OptimizationMode used by IgnoreList and FileExtensionReplacement. + + + Always: Always ignore + + + WhenDisabled: Only when BundleTable.EnableOptimization = false + + + WhenEnabled: Only when BundleTable.EnableOptimization = true + + + Configuration settings used by the class to generate bundle responses outside of ASP.NET applications. + + + Initializes a new instance of the class. + + + The physical file path to resolve the ‘~’ token in virtual paths. + The physical file path. + + + The path to the bundle manifest file that sets up the . + The path to the bundle manifest file that sets up the . + + + Gets or sets a callback function which is invoked after the bundle manifest is loaded to allow further customization of the bundle collection. + A callback function which is invoked after the bundle manifest is loaded to allow further customization of the bundle collection. + + + + Represents a standalone class for generating bundle responses outside of ASP.NET + + + + Builds a object from the declarations found in a bundle manifest file. + The bundle response for specified . + The path to the bundle being requested. + An object containing configuration settings for optimization. + + + Hooks up the BundleModule + + + Hooks up the BundleModule + + + Represents a bundle that does Js Minification. + + + Initializes a new instance of the class that takes a virtual path for the bundle. + The virtual path for the bundle. + + + Initializes a new instance of the class that takes virtual path and cdnPath for the bundle. + The virtual path for the bundle. + The path of a Content Delivery Network (CDN). + + + Represents a type that allows queuing and rendering script elements. + + + Gets or sets the default format string for defining how script tags are rendered. + The default format string for defining how script tags are rendered. + + + Renders script tags for the following paths. + The HTML string containing the script tag or tags for the bundle. + Set of virtual paths for which to generate script tags. + + + Renders script tags for a set of paths based on a format string. + The HTML string containing the script tag or tags for the bundle. + The format string for defining the rendered script tags. + Set of virtual paths for which to generate script tags. + + + Returns a fingerprinted URL if the is to a bundle, otherwise returns the resolve URL. + A that represents the URL. + The virtual path. + + + Represents a bundle that does CSS minification. + + + Initializes a new instance of the class with a virtual path for the bundle. + A virtual path for the bundle. + + + Initializes a new instance of the class with virtual path and CDN path for the bundle. + A virtual path for the bundle. + A CDN path for the bundle. + + + Represents a helper class for rendering link elements. + + + Gets or sets the default format string for defining how link tags are rendered. + The default format string for defining how link tags are rendered. + + + Renders link tags for a set of paths. + A HTML string containing the link tag or tags for the bundle. + Set of virtual paths for which to generate link tags. + + + Renders link tags for a set of paths based on a format string. + A HTML string containing the link tag or tags for the bundle. + Format string for defining the rendered link tags. + Set of virtual paths for which to generate link tags. + + + Generates a version-stamped URL for a bundle. + A fingerprinted URL. + The virtual file path. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.5.2.4/Microsoft.AspNet.WebApi.5.2.4.nupkg b/packages/Microsoft.AspNet.WebApi.5.2.4/Microsoft.AspNet.WebApi.5.2.4.nupkg new file mode 100644 index 0000000..8b8d55a Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.5.2.4/Microsoft.AspNet.WebApi.5.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.WebApi.Client.5.2.4/Microsoft.AspNet.WebApi.Client.5.2.4.nupkg b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/Microsoft.AspNet.WebApi.Client.5.2.4.nupkg new file mode 100644 index 0000000..146f9e3 Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/Microsoft.AspNet.WebApi.Client.5.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/net45/System.Net.Http.Formatting.dll b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/net45/System.Net.Http.Formatting.dll new file mode 100644 index 0000000..333f230 Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/net45/System.Net.Http.Formatting.dll differ diff --git a/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/net45/System.Net.Http.Formatting.xml b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/net45/System.Net.Http.Formatting.xml new file mode 100644 index 0000000..3fb6597 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/net45/System.Net.Http.Formatting.xml @@ -0,0 +1,2094 @@ + + + + System.Net.Http.Formatting + + + + + implementation which provides a byte range view over a stream used to generate HTTP 206 (Partial Content) byte range responses. The supports one or more byte ranges regardless of whether the ranges are consecutive or not. If there is only one range then a single partial response body containing a Content-Range header is generated. If there are more than one ranges then a multipart/byteranges response is generated where each body part contains a range indicated by the associated Content-Range header field. + + + + implementation which provides a byte range view over a stream used to generate HTTP 206 (Partial Content) byte range responses. If none of the requested ranges overlap with the current extend of the selected resource represented by the content parameter then an is thrown indicating the valid Content-Range of the content. + The stream over which to generate a byte range view. + The range or ranges, typically obtained from the Range HTTP request header field. + The media type of the content stream. + + + + implementation which provides a byte range view over a stream used to generate HTTP 206 (Partial Content) byte range responses. If none of the requested ranges overlap with the current extend of the selected resource represented by the content parameter then an is thrown indicating the valid Content-Range of the content. + The stream over which to generate a byte range view. + The range or ranges, typically obtained from the Range HTTP request header field. + The media type of the content stream. + The buffer size used when copying the content stream. + + + + implementation which provides a byte range view over a stream used to generate HTTP 206 (Partial Content) byte range responses. If none of the requested ranges overlap with the current extend of the selected resource represented by the content parameter then an is thrown indicating the valid Content-Range of the content. + The stream over which to generate a byte range view. + The range or ranges, typically obtained from the Range HTTP request header field. + The media type of the content stream. + + + + implementation which provides a byte range view over a stream used to generate HTTP 206 (Partial Content) byte range responses. If none of the requested ranges overlap with the current extend of the selected resource represented by the content parameter then an is thrown indicating the valid Content-Range of the content. + The stream over which to generate a byte range view. + The range or ranges, typically obtained from the Range HTTP request header field. + The media type of the content stream. + The buffer size used when copying the content stream. + + + Releases the resources used by the current instance of the class. + true to release managed and unmanaged resources; false to release only unmanaged resources. + + + Asynchronously serialize and write the byte range to an HTTP content stream. + The task object representing the asynchronous operation. + The target stream. + Information about the transport. + + + Determines whether a byte array has a valid length in bytes. + true if length is a valid length; otherwise, false. + The length in bytes of the byte array. + + + Extension methods that aid in making formatted requests using . + + + + + + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given value serialized as JSON. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The type of value. + + + Sends a POST request as an asynchronous operation to the specified Uri with the given value serialized as JSON. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + + + + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given value serialized as XML. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The type of value. + + + Sends a POST request as an asynchronous operation to the specified Uri with the given value serialized as XML. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + + + + + + + + + + + + + + + + Sends a POST request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The type of value. + + + Sends a POST request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The authoritative value of the request's content's Content-Type header. Can be null in which case the <paramref name="formatter">formatter's</paramref> default content type will be used. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + Sends a POST request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The authoritative value of the request's content's Content-Type header. Can be null in which case the <paramref name="formatter">formatter's</paramref> default content type will be used. + The type of value. + + + Sends a POST request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The authoritative value of the request's content's Content-Type header. Can be null in which case the <paramref name="formatter">formatter's</paramref> default content type will be used. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + Sends a POST request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + + + + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given value serialized as JSON. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The type of value. + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given value serialized as JSON. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + + + + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given value serialized as XML. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The type of value. + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given value serialized as XML. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + + + + + + + + + + + + + + + + Sends a PUT request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The type of value. + + + Sends a PUT request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The authoritative value of the request's content's Content-Type header. Can be null in which case the <paramref name="formatter">formatter's</paramref> default content type will be used. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + Sends a PUT request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The authoritative value of the request's content's Content-Type header. Can be null in which case the <paramref name="formatter">formatter's</paramref> default content type will be used. + The type of value. + + + Sends a PUT request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + The authoritative value of the request's content's Content-Type header. Can be null in which case the <paramref name="formatter">formatter's</paramref> default content type will be used. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + Sends a PUT request as an asynchronous operation to the specified Uri with value serialized using the given formatter. + A task object representing the asynchronous operation. + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the value. + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + The type of value. + + + Represents the factory for creating new instance of . + + + Creates a new instance of the . + A new instance of the . + The list of HTTP handler that delegates the processing of HTTP response messages to another handler. + + + Creates a new instance of the . + A new instance of the . + The inner handler which is responsible for processing the HTTP response messages. + The list of HTTP handler that delegates the processing of HTTP response messages to another handler. + + + Creates a new instance of the which should be pipelined. + A new instance of the which should be pipelined. + The inner handler which is responsible for processing the HTTP response messages. + The list of HTTP handler that delegates the processing of HTTP response messages to another handler. + + + Specifies extension methods to allow strongly typed objects to be read from HttpContent instances. + + + Returns a Task that will yield an object of the specified type <typeparamref name="T" /> from the content instance. + An object instance of the specified type. + The HttpContent instance from which to read. + The type of the object to read. + + + Returns a Task that will yield an object of the specified type <typeparamref name="T" /> from the content instance. + An object instance of the specified type. + The HttpContent instance from which to read. + The collection of MediaTyepFormatter instances to use. + The type of the object to read. + + + Returns a Task that will yield an object of the specified type <typeparamref name="T" /> from the content instance. + An object instance of the specified type. + The HttpContent instance from which to read. + The collection of MediaTypeFormatter instances to use. + The IFormatterLogger to log events to. + The type of the object to read. + + + Returns a Task that will yield an object of the specified type from the content instance. + An object instance of the specified type. + The HttpContent instance from which to read. + The collection of MediaTypeFormatter instances to use. + The IFormatterLogger to log events to. + The token to cancel the operation. + The type of the object to read. + + + Returns a Task that will yield an object of the specified type from the content instance. + An object instance of the specified type. + The HttpContent instance from which to read. + The collection of MediaTypeFormatter instances to use. + The token to cancel the operation. + The type of the object to read. + + + Returns a Task that will yield an object of the specified type from the content instance. + An object instance of the specified type. + The HttpContent instance from which to read. + The token to cancel the operation. + The type of the object to read. + + + Returns a Task that will yield an object of the specified type from the content instance. + A Task that will yield an object instance of the specified type. + The HttpContent instance from which to read. + The type of the object to read. + + + Returns a Task that will yield an object of the specified type from the content instance using one of the provided formatters to deserialize the content. + An object instance of the specified type. + The HttpContent instance from which to read. + The type of the object to read. + The collection of MediaTypeFormatter instances to use. + + + Returns a Task that will yield an object of the specified type from the content instance using one of the provided formatters to deserialize the content. + An object instance of the specified type. + The HttpContent instance from which to read. + The type of the object to read. + The collection of MediaTypeFormatter instances to use. + The IFormatterLogger to log events to. + + + Returns a Task that will yield an object of the specified type from the content instance using one of the provided formatters to deserialize the content. + An object instance of the specified type. + The HttpContent instance from which to read. + The type of the object to read. + The collection of MediaTypeFormatter instances to use. + The IFormatterLogger to log events to. + The token to cancel the operation. + + + Returns a Task that will yield an object of the specified type from the content instance using one of the provided formatters to deserialize the content. + An object instance of the specified type. + The HttpContent instance from which to read. + The type of the object to read. + The collection of MediaTypeFormatter instances to use. + The token to cancel the operation. + + + Returns a Task that will yield an object of the specified type from the content instance using one of the provided formatters to deserialize the content. + An object instance of the specified type. + The HttpContent instance from which to read. + The type of the object to read. + The token to cancel the operation. + + + Extension methods to read HTML form URL-encoded datafrom instances. + + + Determines whether the specified content is HTML form URL-encoded data. + true if the specified content is HTML form URL-encoded data; otherwise, false. + The content. + + + Asynchronously reads HTML form URL-encoded from an instance and stores the results in a object. + A task object representing the asynchronous operation. + The content. + + + Asynchronously reads HTML form URL-encoded from an instance and stores the results in a object. + A task object representing the asynchronous operation. + The content. + The token to cancel the operation. + + + Provides extension methods to read and entities from instances. + + + Determines whether the specified content is HTTP request message content. + true if the specified content is HTTP message content; otherwise, false. + The content to check. + + + Determines whether the specified content is HTTP response message content. + true if the specified content is HTTP message content; otherwise, false. + The content to check. + + + Reads the as an . + The parsed instance. + The content to read. + + + Reads the as an . + The parsed instance. + The content to read. + The URI scheme to use for the request URI. + + + Reads the as an . + The parsed instance. + The content to read. + The URI scheme to use for the request URI. + The size of the buffer. + + + Reads the as an . + The parsed instance. + The content to read. + The URI scheme to use for the request URI. + The size of the buffer. + The maximum length of the HTTP header. + + + + + + + Reads the as an . + The parsed instance. + The content to read. + + + Reads the as an . + The parsed instance. + The content to read. + The size of the buffer. + + + Reads the as an . + The parsed instance. + The content to read. + The size of the buffer. + The maximum length of the HTTP header. + + + + + + Extension methods to read MIME multipart entities from instances. + + + Determines whether the specified content is MIME multipart content. + true if the specified content is MIME multipart content; otherwise, false. + The content. + + + Determines whether the specified content is MIME multipart content with the specified subtype. + true if the specified content is MIME multipart content with the specified subtype; otherwise, false. + The content. + The MIME multipart subtype to match. + + + Reads all body parts within a MIME multipart message and produces a set of instances as a result. + A representing the tasks of getting the collection of instances where each instance represents a body part. + An existing instance to use for the object's content. + + + Reads all body parts within a MIME multipart message and produces a set of instances as a result. + A representing the tasks of getting the collection of instances where each instance represents a body part. + An existing instance to use for the object's content. + The token to cancel the operation. + + + Reads all body parts within a MIME multipart message and produces a set of instances as a result using the streamProvider instance to determine where the contents of each body part is written. + A representing the tasks of getting the collection of instances where each instance represents a body part. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + The type of the MIME multipart. + + + Reads all body parts within a MIME multipart message and produces a set of instances as a result using the streamProvider instance to determine where the contents of each body part is written and bufferSize as read buffer size. + A representing the tasks of getting the collection of instances where each instance represents a body part. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + Size of the buffer used to read the contents. + The type of the MIME multipart. + + + Reads all body parts within a MIME multipart message and produces a set of instances as a result using the streamProvider instance to determine where the contents of each body part is written and bufferSize as read buffer size. + A representing the tasks of getting the collection of instances where each instance represents a body part. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + Size of the buffer used to read the contents. + The token to cancel the operation. + The type of the MIME multipart. + + + Reads all body parts within a MIME multipart message and produces a set of instances as a result using the streamProvider instance to determine where the contents of each body part is written. + A representing the tasks of getting the collection of instances where each instance represents a body part. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + The token to cancel the operation. + The type of the MIME multipart. + + + Derived class which can encapsulate an or an as an entity with media type "application/http". + + + Initializes a new instance of the class encapsulating an . + The instance to encapsulate. + + + Initializes a new instance of the class encapsulating an . + The instance to encapsulate. + + + Releases unmanaged and - optionally - managed resources + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Gets the HTTP request message. + + + Gets the HTTP response message. + + + Asynchronously serializes the object's content to the given stream. + A instance that is asynchronously serializing the object's content. + The to which to write. + The associated . + + + Computes the length of the stream if possible. + true if the length has been computed; otherwise false. + The computed length of the stream. + + + Provides extension methods for the class. + + + Gets any cookie headers present in the request. + A collection of instances. + The request headers. + + + Gets any cookie headers present in the request that contain a cookie state whose name that matches the specified value. + A collection of instances. + The request headers. + The cookie state name to match. + + + + + Provides extension methods for the class. + + + Adds cookies to a response. Each Set-Cookie header is represented as one instance. A contains information about the domain, path, and other cookie information as well as one or more instances. Each instance contains a cookie name and whatever cookie state is associate with that name. The state is in the form of a which on the wire is encoded as HTML Form URL-encoded data. This representation allows for multiple related "cookies" to be carried within the same Cookie header while still providing separation between each cookie state. A sample Cookie header is shown below. In this example, there are two with names state1 and state2 respectively. Further, each cookie state contains two name/value pairs (name1/value1 and name2/value2) and (name3/value3 and name4/value4). <code> Set-Cookie: state1:name1=value1&amp;name2=value2; state2:name3=value3&amp;name4=value4; domain=domain1; path=path1; </code> + The response headers + The cookie values to add to the response. + + + An exception thrown by in case none of the requested ranges overlap with the current extend of the selected resource. The current extend of the resource is indicated in the ContentRange property. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + + + The current extend of the resource indicated in terms of a ContentRange header field. + + + Represents a multipart file data. + + + Initializes a new instance of the class. + The headers of the multipart file data. + The name of the local file for the multipart file data. + + + Gets or sets the headers of the multipart file data. + The headers of the multipart file data. + + + Gets or sets the name of the local file for the multipart file data. + The name of the local file for the multipart file data. + + + Represents an suited for writing each MIME body parts of the MIME multipart message to a file using a . + + + Initializes a new instance of the class. + The root path where the content of MIME multipart body parts are written to. + + + Initializes a new instance of the class. + The root path where the content of MIME multipart body parts are written to. + The number of bytes buffered for writes to the file. + + + Gets or sets the number of bytes buffered for writes to the file. + The number of bytes buffered for writes to the file. + + + Gets or sets the multipart file data. + The multipart file data. + + + Gets the name of the local file which will be combined with the root path to create an absolute file name where the contents of the current MIME body part will be stored. + A relative filename with no path component. + The headers for the current MIME body part. + + + Gets the stream instance where the message body part is written to. + The instance where the message body part is written to. + The content of HTTP. + The header fields describing the body part. + + + Gets or sets the root path where the content of MIME multipart body parts are written to. + The root path where the content of MIME multipart body parts are written to. + + + A implementation suited for use with HTML file uploads for writing file content to a remote storage . The stream provider looks at the Content-Disposition header field and determines an output remote based on the presence of a filename parameter. If a filename parameter is present in the Content-Disposition header field, then the body part is written to a remote provided by . Otherwise it is written to a . + + + Initializes a new instance of the class. + + + Read the non-file contents as form data. + A representing the post processing. + + + Read the non-file contents as form data. + A representing the post processing. + The token to monitor for cancellation requests. + + + Gets a collection of file data passed as part of the multipart form data. + + + Gets a of form data passed as part of the multipart form data. + + + Provides a for . Override this method to provide a remote stream to which the data should be written. + A result specifying a remote stream where the file will be written to and a location where the file can be accessed. It cannot be null and the stream must be writable. + The parent MIME multipart instance. + The header fields describing the body part's content. + + + + Represents an suited for use with HTML file uploads for writing file content to a . + + + Initializes a new instance of the class. + The root path where the content of MIME multipart body parts are written to. + + + Initializes a new instance of the class. + The root path where the content of MIME multipart body parts are written to. + The number of bytes buffered for writes to the file. + + + Reads the non-file contents as form data. + A task that represents the asynchronous operation. + + + + Gets a of form data passed as part of the multipart form data. + The of form data. + + + Gets the streaming instance where the message body part is written. + The instance where the message body part is written. + The HTTP content that contains this body part. + Header fields describing the body part. + + + Represents a multipart memory stream provider. + + + Initializes a new instance of the class. + + + Returns the for the . + The for the . + A object. + The HTTP content headers. + + + Represents the provider for the multipart related multistream. + + + Initializes a new instance of the class. + + + Gets the related stream for the provider. + The content headers. + The parent content. + The http content headers. + + + Gets the root content of the . + The root content of the . + + + Represents a multipart file data for remote storage. + + + Initializes a new instance of the class. + The headers of the multipart file data. + The remote file's location. + The remote file's name. + + + Gets the remote file's name. + + + Gets the headers of the multipart file data. + + + Gets the remote file's location. + + + Represents a stream provider that examines the headers provided by the MIME multipart parser as part of the MIME multipart extension methods (see ) and decides what kind of stream to return for the body part to be written to. + + + Initializes a new instance of the class. + + + Gets or sets the contents for this . + The contents for this . + + + Executes the post processing operation for this . + The asynchronous task for this operation. + + + Executes the post processing operation for this . + The asynchronous task for this operation. + The token to cancel the operation. + + + Gets the stream where to write the body part to. This method is called when a MIME multipart body part has been parsed. + The instance where the message body part is written to. + The content of the HTTP. + The header fields describing the body part. + + + Contains a value as well as an associated that will be used to serialize the value when writing this content. + + + Initializes a new instance of the class. + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + + + Initializes a new instance of the class. + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the Content-Type header. Can be null, in which case the default content type of the formatter will be used. + + + Initializes a new instance of the class. + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the Content-Type header. + + + Gets the media-type formatter associated with this content instance. + The media type formatter associated with this content instance. + + + Gets the type of object managed by this instance. + The object type. + + + Asynchronously serializes the object's content to the given stream. + The task object representing the asynchronous operation. + The stream to write to. + The associated . + + + Computes the length of the stream if possible. + true if the length has been computed; otherwise, false. + Receives the computed length of the stream. + + + Gets or sets the value of the content. + The content value. + + + Generic form of . + The type of object this class will contain. + + + Initializes a new instance of the class. + The value of the object this instance will contain. + The formatter to use when serializing the value. + + + Initializes a new instance of the <see cref="T:System.Net.Http.ObjectContent`1" /> class. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the Content-Type header. Can be null, in which case the default content type of the formatter will be used. + + + Initializes a new instance of the class. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the Content-Type header. + + + Enables scenarios where a data producer wants to write directly (either synchronously or asynchronously) using a stream. + + + Initializes a new instance of the class. + An action that is called when an output stream is available, allowing the action to write to it directly. + + + Initializes a new instance of the class. + An action that is called when an output stream is available, allowing the action to write to it directly. + The media type. + + + Initializes a new instance of the class. + An action that is called when an output stream is available, allowing the action to write to it directly. + The media type. + + + Initializes a new instance of the class. + An action that is called when an output stream is available, allowing the action to write to it directly. + + + Initializes a new instance of the class. + An action that is called when an output stream is available, allowing the action to write to it directly. + The media type. + + + Initializes a new instance of the class. + An action that is called when an output stream is available, allowing the action to write to it directly. + The media type. + + + Asynchronously serializes the push content into stream. + The serialized push content. + The stream where the push content will be serialized. + The context. + + + Determines whether the stream content has a valid length in bytes. + true if length is a valid length; otherwise, false. + The length in bytes of the stream content. + + + Represents the result for . + + + Initializes a new instance of the class. + The remote stream instance where the file will be written to. + The remote file's location. + The remote file's name. + + + Gets the remote file's location. + + + Gets the remote file's location. + + + Gets the remote stream instance where the file will be written to. + + + Defines an exception type for signalling that a request's media type was not supported. + + + Initializes a new instance of the class. + The message that describes the error. + The unsupported media type. + + + Gets or sets the media type. + The media type. + + + Contains extension methods to allow strongly typed objects to be read from the query component of instances. + + + Parses the query portion of the specified URI. + A that contains the query parameters. + The URI to parse. + + + Reads HTML form URL encoded data provided in the URI query string as an object of a specified type. + true if the query component of the URI can be read as the specified type; otherwise, false. + The URI to read. + The type of object to read. + When this method returns, contains an object that is initialized from the query component of the URI. This parameter is treated as uninitialized. + + + Reads HTML form URL encoded data provided in the URI query string as an object of a specified type. + true if the query component of the URI can be read as the specified type; otherwise, false. + The URI to read. + When this method returns, contains an object that is initialized from the query component of the URI. This parameter is treated as uninitialized. + The type of object to read. + + + Reads HTML form URL encoded data provided in the query component as a object. + true if the query component can be read as ; otherwise false. + The instance from which to read. + An object to be initialized with this instance or null if the conversion cannot be performed. + + + Abstract media type formatter class to support Bson and Json. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The instance to copy settings from. + + + Determines whether this formatter can read objects of the specified type. + true if objects of this type can be read, otherwise false. + The type of object that will be read. + + + Determines whether this formatter can write objects of the specified type. + true if objects of this type can be written, otherwise false. + The type of object to write. + + + Creates a instance with the default settings used by the . + Returns . + + + Called during deserialization to get the . + The reader to use during deserialization. + The type of the object to read. + The stream from which to read. + The encoding to use when reading. + + + Called during serialization and deserialization to get the . + The JsonSerializer used during serialization and deserialization. + + + Called during serialization to get the . + The writer to use during serialization. + The type of the object to write. + The stream to write to. + The encoding to use when writing. + + + Gets or sets the maximum depth allowed by this formatter. + The maximum depth allowed by this formatter. + + + Called during deserialization to read an object of the specified type from the specified stream. + The object that has been read. + The type of the object to read. + The stream from which to read. + The encoding to use when reading. + The logger to log events to. + + + Called during deserialization to read an object of the specified type from the specified stream. + A task whose result will be the object instance that has been read. + The type of the object to read. + The stream from which to read. + The for the content being read. + The logger to log events to. + + + Gets or sets the JsonSerializerSettings used to configure the JsonSerializer. + The JsonSerializerSettings used to configure the JsonSerializer. + + + Called during serialization to write an object of the specified type to the specified stream. + The type of the object to write. + The object to write. + The stream to write to. + The encoding to use when writing. + + + Called during serialization to write an object of the specified type to the specified stream. + Returns . + The type of the object to write. + The object to write. + The stream to write to. + The for the content being written. + The transport context. + The token to monitor for cancellation. + + + Represents a media type formatter to handle Bson. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The formatter to copy settings from. + + + Called during deserialization to get the . + The reader to use during deserialization. + The type of the object to read. + The stream from which to read. + The encoding to use when reading. + + + Called during serialization to get the . + The writer to use during serialization. + The type of the object to write. + The stream to write to. + The encoding to use when writing. + + + Gets the default media type for Json, namely "application/bson". + The default media type for Json, namely "application/bson". + + + Gets or sets the maximum depth allowed by this formatter. + The maximum depth allowed by this formatter. + + + Called during deserialization to read an object of the specified type from the specified stream. + The object that has been read. + The type of the object to read. + The stream from which to read. + The encoding to use when reading. + The logger to log events to. + + + Called during deserialization to read an object of the specified type from the specified stream. + A task whose result will be the object instance that has been read. + The type of the object to read. + The stream from which to read. + The for the content being read. + The logger to log events to. + + + Called during serialization to write an object of the specified type to the specified stream. + The type of the object to write. + The object to write. + The stream to write to. + The encoding to use when writing. + + + Represents a helper class to allow a synchronous formatter on top of the asynchronous formatter infrastructure. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The instance to copy settings from. + + + Gets or sets the suggested size of buffer to use with streams in bytes. + The suggested size of buffer to use with streams in bytes. + + + Reads synchronously from the buffered stream. + An object of the given . + The type of the object to deserialize. + The stream from which to read. + The , if available. Can be null. + The to log events to. + + + Reads synchronously from the buffered stream. + An object of the given . + The type of the object to deserialize. + The stream from which to read. + The , if available. Can be null. + The to log events to. + The token to cancel the operation. + + + Reads asynchronously from the buffered stream. + A task object representing the asynchronous operation. + The type of the object to deserialize. + The stream from which to read. + The , if available. Can be null. + The to log events to. + + + Reads asynchronously from the buffered stream. + A task object representing the asynchronous operation. + The type of the object to deserialize. + The stream from which to read. + The , if available. Can be null. + The to log events to. + The token to cancel the operation. + + + Writes synchronously to the buffered stream. + The type of the object to serialize. + The object value to write. Can be null. + The stream to which to write. + The , if available. Can be null. + + + Writes synchronously to the buffered stream. + The type of the object to serialize. + The object value to write. Can be null. + The stream to which to write. + The , if available. Can be null. + The token to cancel the operation. + + + Writes asynchronously to the buffered stream. + A task object representing the asynchronous operation. + The type of the object to serialize. + The object value to write. It may be null. + The stream to which to write. + The , if available. Can be null. + The transport context. + + + Writes asynchronously to the buffered stream. + A task object representing the asynchronous operation. + The type of the object to serialize. + The object value to write. It may be null. + The stream to which to write. + The , if available. Can be null. + The transport context. + The token to cancel the operation. + + + Represents the result of content negotiation performed using <see cref="M:System.Net.Http.Formatting.IContentNegotiator.Negotiate(System.Type,System.Net.Http.HttpRequestMessage,System.Collections.Generic.IEnumerable{System.Net.Http.Formatting.MediaTypeFormatter})" /> + + + Create the content negotiation result object. + The formatter. + The preferred media type. Can be null. + + + The formatter chosen for serialization. + + + The media type that is associated with the formatter chosen for serialization. Can be null. + + + The default implementation of , which is used to select a for an or . + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + true to exclude formatters that match only on the object type; otherwise, false. + + + Determines how well each formatter matches an HTTP request. + Returns a collection of objects that represent all of the matches. + The type to be serialized. + The request. + The set of objects from which to choose. + + + If true, exclude formatters that match only on the object type; otherwise, false. + Returns a . + + + Matches a set of Accept header fields against the media types that a formatter supports. + Returns a object that indicates the quality of the match, or null if there is no match. + A list of Accept header values, sorted in descending order of q factor. You can create this list by calling the method. + The formatter to match against. + + + Matches a request against the objects in a media-type formatter. + Returns a object that indicates the quality of the match, or null if there is no match. + The request to match. + The media-type formatter. + + + Match the content type of a request against the media types that a formatter supports. + Returns a object that indicates the quality of the match, or null if there is no match. + The request to match. + The formatter to match against. + + + Selects the first supported media type of a formatter. + Returns a with set to MatchOnCanWriteType, or null if there is no match. A indicating the quality of the match or null is no match. + The type to match. + The formatter to match against. + + + Performs content negotiating by selecting the most appropriate out of the passed in for the given that can serialize an object of the given . + The result of the negotiation containing the most appropriate instance, or null if there is no appropriate formatter. + The type to be serialized. + The request. + The set of objects from which to choose. + + + Determines the best character encoding for writing the response. + Returns the that is the best match. + The request. + The selected media formatter. + + + Select the best match among the candidate matches found. + Returns the object that represents the best match. + The collection of matches. + + + Determine whether to match on type or not. This is used to determine whether to generate a 406 response or use the default media type formatter in case there is no match against anything in the request. If ExcludeMatchOnTypeOnly is true then we don't match on type unless there are no accept headers. + True if not ExcludeMatchOnTypeOnly and accept headers with a q-factor bigger than 0.0 are present. + The sorted accept header values to match. + + + Sorts Accept header values in descending order of q factor. + Returns the sorted list of MediaTypeWithQualityHeaderValue objects. + A collection of StringWithQualityHeaderValue objects, representing the header fields. + + + Sorts a list of Accept-Charset, Accept-Encoding, Accept-Language or related header values in descending order or q factor. + Returns the sorted list of StringWithQualityHeaderValue objects. + A collection of StringWithQualityHeaderValue objects, representing the header fields. + + + Evaluates whether a match is better than the current match. + Returns whichever object is a better match. + The current match. + The match to evaluate against the current match. + + + Helper class to serialize <see cref="T:System.Collections.Generic.IEnumerable`1" /> types by delegating them through a concrete implementation."/&gt;. + The interface implementing to proxy. + + + Initialize a DelegatingEnumerable. This constructor is necessary for to work. + + + Initialize a DelegatingEnumerable with an <see cref="T:System.Collections.Generic.IEnumerable`1" />. This is a helper class to proxy <see cref="T:System.Collections.Generic.IEnumerable`1" /> interfaces for . + The <see cref="T:System.Collections.Generic.IEnumerable`1" /> instance to get the enumerator from. + + + This method is not implemented but is required method for serialization to work. Do not use. + The item to add. Unused. + + + Get the enumerator of the associated <see cref="T:System.Collections.Generic.IEnumerable`1" />. + The enumerator of the <see cref="T:System.Collections.Generic.IEnumerable`1" /> source. + + + Get the enumerator of the associated <see cref="T:System.Collections.Generic.IEnumerable`1" />. + The enumerator of the <see cref="T:System.Collections.Generic.IEnumerable`1" /> source. + + + Represent the collection of form data. + + + Initializes a new instance of class. + The pairs. + + + Initializes a new instance of class. + The query. + + + Initializes a new instance of class. + The URI + + + Gets the collection of form data. + The collection of form data. + The key. + + + Gets an enumerable that iterates through the collection. + The enumerable that iterates through the collection. + + + Gets the values of the collection of form data. + The values of the collection of form data. + The key. + + + Gets values associated with a given key. If there are multiple values, they're concatenated. + Values associated with a given key. If there are multiple values, they're concatenated. + + + Reads the collection of form data as a collection of name value. + The collection of form data as a collection of name value. + + + Gets an enumerable that iterates through the collection. + The enumerable that iterates through the collection. + + + + class for handling HTML form URL-ended data, also known as application/x-www-form-urlencoded. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The instance to copy settings from. + + + Queries whether the can deserializean object of the specified type. + true if the can deserialize the type; otherwise, false. + The type to deserialize. + + + Queries whether the can serializean object of the specified type. + true if the can serialize the type; otherwise, false. + The type to serialize. + + + Gets the default media type for HTML form-URL-encoded data, which is application/x-www-form-urlencoded. + The default media type for HTML form-URL-encoded data + + + Gets or sets the maximum depth allowed by this formatter. + The maximum depth. + + + Gets or sets the size of the buffer when reading the incoming stream. + The buffer size. + + + Asynchronously deserializes an object of the specified type. + A whose result will be the object instance that has been read. + The type of object to deserialize. + The to read. + The for the content being read. + The to log events to. + + + Performs content negotiation. This is the process of selecting a response writer (formatter) in compliance with header values in the request. + + + Performs content negotiating by selecting the most appropriate out of the passed in formatters for the given request that can serialize an object of the given type. + The result of the negotiation containing the most appropriate instance, or null if there is no appropriate formatter. + The type to be serialized. + Request message, which contains the header values used to perform negotiation. + The set of objects from which to choose. + + + Specifies a callback interface that a formatter can use to log errors while reading. + + + Logs an error. + The path to the member for which the error is being logged. + The error message. + + + Logs an error. + The path to the member for which the error is being logged. + The error message to be logged. + + + Defines method that determines whether a given member is required on deserialization. + + + Determines whether a given member is required on deserialization. + true if should be treated as a required member; otherwise false. + The to be deserialized. + + + Represents the default used by . It uses the formatter's to select required members and recognizes the type annotation. + + + Initializes a new instance of the class. + The formatter to use for resolving required members. + + + Creates a property on the specified class by using the specified parameters. + A to create on the specified class by using the specified parameters. + The member info. + The member serialization. + + + Represents the class to handle JSON. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The instance to copy settings from. + + + Determines whether this can read objects of the specified . + true if objects of this can be read, otherwise false. + The type of object that will be read. + + + Determines whether this can write objects of the specified . + true if objects of this can be written, otherwise false. + The type of object that will be written. + + + Called during deserialization to get the . + The object used for serialization. + The type of object that will be serialized or deserialized. + + + Called during deserialization to get the . + The reader to use during deserialization. + The type of the object to read. + The stream from which to read. + The encoding to use when reading. + + + Called during serialization to get the . + The writer to use during serialization. + The type of the object to write. + The stream to write to. + The encoding to use when writing. + + + Gets the default media type for JSON, namely "application/json". + The for JSON. + + + Gets or sets a value indicating whether to indent elements when writing data. + true if to indent elements when writing data; otherwise, false. + + + Gets or sets the maximum depth allowed by this formatter. + The maximum depth allowed by this formatter. + + + Called during deserialization to read an object of the specified type from the specified stream. + The object that has been read. + The type of the object to read. + The stream from which to read. + The encoding to use when reading. + The logger to log events to. + + + Gets or sets a value indicating whether to use by default. + true if to by default; otherwise, false. + + + Called during serialization to write an object of the specified type to the specified stream. + The type of the object to write. + The object to write. + The stream to write to. + The encoding to use when writing. + + + Called during serialization to write an object of the specified type to the specified stream. + Returns . + The type of the object to write. + The object to write. + The stream to write to. + The for the content being written. + The transport context. + The token to monitor for cancellation. + + + Base class to handle serializing and deserializing strongly-typed objects using . + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The instance to copy settings from. + + + Queries whether this can deserializean object of the specified type. + true if the can deserialize the type; otherwise, false. + The type to deserialize. + + + Queries whether this can serializean object of the specified type. + true if the can serialize the type; otherwise, false. + The type to serialize. + + + Gets the default value for the specified type. + The default value. + The type for which to get the default value. + + + Returns a specialized instance of the that can format a response for the given parameters. + Returns . + The type to format. + The request. + The media type. + + + Gets or sets the maximum number of keys stored in a T: . + The maximum number of keys. + + + Gets the mutable collection of objects that match HTTP requests to media types. + The collection. + + + Asynchronously deserializes an object of the specified type. + A whose result will be an object of the given type. + The type of the object to deserialize. + The to read. + The , if available. It may be null. + The to log events to. + Derived types need to support reading. + + + Asynchronously deserializes an object of the specified type. + A whose result will be an object of the given type. + The type of the object to deserialize. + The to read. + The , if available. It may be null. + The to log events to. + The token to cancel the operation. + + + Gets or sets the instance used to determine required members. + The instance. + + + Determines the best character encoding for reading or writing an HTTP entity body, given a set of content headers. + The encoding that is the best match. + The content headers. + + + Sets the default headers for content that will be formatted using this formatter. This method is called from the constructor. This implementation sets the Content-Type header to the value of mediaType if it is not null. If it is null it sets the Content-Type to the default media type of this formatter. If the Content-Type does not specify a charset it will set it using this formatters configured . + The type of the object being serialized. See . + The content headers that should be configured. + The authoritative media type. Can be null. + + + Gets the mutable collection of character encodings supported bythis . + The collection of objects. + + + Gets the mutable collection of media types supported bythis . + The collection of objects. + + + Asynchronously writes an object of the specified type. + A that will perform the write. + The type of the object to write. + The object value to write. It may be null. + The to which to write. + The if available. It may be null. + The if available. It may be null. + Derived types need to support writing. + + + Asynchronously writes an object of the specified type. + A that will perform the write. + The type of the object to write. + The object value to write. It may be null. + The to which to write. + The if available. It may be null. + The if available. It may be null. + The token to cancel the operation. + Derived types need to support writing. + + + Collection class that contains instances. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + A collection of instances to place in the collection. + + + Adds the elements of the specified collection to the end of the . + The items that should be added to the end of the . The items collection itself cannot be , but it can contain elements that are . + + + Removes all items in the collection. + + + Helper to search a collection for a formatter that can read the .NET type in the given mediaType. + The formatter that can read the type. Null if no formatter found. + The .NET type to read + The media type to match on. + + + Helper to search a collection for a formatter that can write the .NET type in the given mediaType. + The formatter that can write the type. Null if no formatter found. + The .NET type to read + The media type to match on. + + + Gets the to use for application/x-www-form-urlencoded data. + The to use for application/x-www-form-urlencoded data. + + + Inserts the specified item at the specified index in the collection. + The index to insert at. + The item to insert. + + + Inserts the elements of a collection into the at the specified index. + The zero-based index at which the new elements should be inserted. + The items that should be inserted into the . The items collection itself cannot be , but it can contain elements that are . + + + Returns true if the type is one of those loosely defined types that should be excluded from validation. + true if the type should be excluded; otherwise, false. + The .NET to validate. + + + Gets the to use for JSON. + The to use for JSON. + + + Removes the item at the specified index. + The index of the item to remove. + + + Assigns the item at the specified index in the collection. + The index to insert at. + The item to assign. + + + Gets the to use for XML. + The to use for XML. + + + + + + + This class describes how well a particular matches a request. + + + Initializes a new instance of the class. + The matching formatter. + The media type. Can be null in which case the media type application/octet-stream is used. + The quality of the match. Can be null in which case it is considered a full match with a value of 1.0 + The kind of match. + + + Gets the media type formatter. + + + Gets the matched media type. + + + Gets the quality of the match + + + Gets the kind of match that occurred. + + + Contains information about the degree to which a matches the explicit or implicit preferences found in an incoming request. + + + Matched on a type, meaning that the formatter is able to serialize the type. + + + Matched on an explicit “*/*” range in the Accept header. + + + Matched on an explicit literal accept header, such as “application/json”. + + + Matched on an explicit subtype range in an Accept header, such as “application/*”. + + + Matched on the media type of the entity body in the HTTP request message. + + + Matched on after having applied the various s. + + + No match was found + + + An abstract base class used to create an association between or instances that have certain characteristics and a specific . + + + Initializes a new instance of a with the given mediaType value. + The that is associated with or instances that have the given characteristics of the . + + + Initializes a new instance of a with the given mediaType value. + The that is associated with or instances that have the given characteristics of the . + + + Gets the that is associated with or instances that have the given characteristics of the . + + + Returns the quality of the match of the associated with request. + The quality of the match. It must be between 0.0 and 1.0. A value of 0.0 signifies no match. A value of 1.0 signifies a complete match. + The to evaluate for the characteristics associated with the of the . + + + Class that provides s from query strings. + + + Initializes a new instance of the class. + The name of the query string parameter to match, if present. + The value of the query string parameter specified by queryStringParameterName. + The to use if the query parameter specified by queryStringParameterName is present and assigned the value specified by queryStringParameterValue. + + + Initializes a new instance of the class. + The name of the query string parameter to match, if present. + The value of the query string parameter specified by queryStringParameterName. + The media type to use if the query parameter specified by queryStringParameterName is present and assigned the value specified by queryStringParameterValue. + + + Gets the query string parameter name. + + + Gets the query string parameter value. + + + Returns a value indicating whether the current instance can return a from request. + If this instance can produce a from request it returns 1.0 otherwise 0.0. + The to check. + + + This class provides a mapping from an arbitrary HTTP request header field to a used to select instances for handling the entity body of an or . <remarks>This class only checks header fields associated with for a match. It does not check header fields associated with or instances.</remarks> + + + Initializes a new instance of the class. + Name of the header to match. + The header value to match. + The to use when matching headerValue. + if set to true then headerValue is considered a match if it matches a substring of the actual header value. + The to use if headerName and headerValue is considered a match. + + + Initializes a new instance of the class. + Name of the header to match. + The header value to match. + The value comparison to use when matching headerValue. + if set to true then headerValue is considered a match if it matches a substring of the actual header value. + The media type to use if headerName and headerValue is considered a match. + + + Gets the name of the header to match. + + + Gets the header value to match. + + + Gets the to use when matching . + + + Gets a value indicating whether is a matched as a substring of the actual header value. this instance is value substring. + truefalse + + + Returns a value indicating whether the current instance can return a from request. + The quality of the match. It must be between 0.0 and 1.0. A value of 0.0 signifies no match. A value of 1.0 signifies a complete match. + The to check. + + + A that maps the X-Requested-With http header field set by AJAX XmlHttpRequest (XHR) to the media type application/json if no explicit Accept header fields are present in the request. + + + Initializes a new instance of class + + + Returns a value indicating whether the current instance can return a from request. + The quality of the match. A value of 0.0 signifies no match. A value of 1.0 signifies a complete match and that the request was made using XmlHttpRequest without an Accept header. + The to check. + + + + class to handle Xml. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The instance to copy settings from. + + + Queries whether the can deserializean object of the specified type. + true if the can deserialize the type; otherwise, false. + The type to deserialize. + + + Queries whether the can serializean object of the specified type. + true if the can serialize the type; otherwise, false. + The type to serialize. + + + Called during deserialization to get the DataContractSerializer serializer. + The object used for serialization. + The type of object that will be serialized or deserialized. + + + Called during deserialization to get the XML reader to use for reading objects from the stream. + The to use for reading objects. + The to read from. + The for the content being read. + + + Called during deserialization to get the XML serializer. + The object used for serialization. + The type of object that will be serialized or deserialized. + + + Called during serialization to get the XML writer to use for writing objects to the stream. + The to use for writing objects. + The to write to. + The for the content being written. + + + Gets the default media type for the XML formatter. + The default media type, which is “application/xml”. + + + Called during deserialization to get the XML serializer to use for deserializing objects. + An instance of or to use for deserializing the object. + The type of object to deserialize. + The for the content being read. + + + Called during serialization to get the XML serializer to use for serializing objects. + An instance of or to use for serializing the object. + The type of object to serialize. + The object to serialize. + The for the content being written. + + + Gets or sets a value indicating whether to indent elements when writing data. + true to indent elements; otherwise, false. + + + This method is to support infrastructure and is not intended to be used directly from your code. + Returns . + + + This method is to support infrastructure and is not intended to be used directly from your code. + Returns . + + + This method is to support infrastructure and is not intended to be used directly from your code. + Returns . + + + This method is to support infrastructure and is not intended to be used directly from your code. + Returns . + + + Gets and sets the maximum nested node depth. + The maximum nested node depth. + + + Called during deserialization to read an object of the specified type from the specified readStream. + A whose result will be the object instance that has been read. + The type of object to read. + The from which to read. + The for the content being read. + The to log events to. + + + Unregisters the serializer currently associated with the given type. + true if a serializer was previously registered for the type; otherwise, false. + The type of object whose serializer should be removed. + + + Registers an to read or write objects of a specified type. + The instance. + The type of object that will be serialized or deserialized with. + + + Registers an to read or write objects of a specified type. + The type of object that will be serialized or deserialized with. + The instance. + + + Registers an to read or write objects of a specified type. + The type of object that will be serialized or deserialized with. + The instance. + + + Registers an to read or write objects of a specified type. + The instance. + The type of object that will be serialized or deserialized with. + + + Gets or sets a value indicating whether the XML formatter uses the as the default serializer, instead of using the . + If true, the formatter uses the by default; otherwise, it uses the by default. + + + Gets the settings to be used while writing. + The settings to be used while writing. + + + Called during serialization to write an object of the specified type to the specified writeStream. + A that will write the value to the stream. + The type of object to write. + The object to write. + The to which to write. + The for the content being written. + The . + The token to monitor cancellation. + + + Represents the event arguments for the HTTP progress. + + + Initializes a new instance of the class. + The percentage of the progress. + The user token. + The number of bytes transferred. + The total number of bytes transferred. + + + + + Generates progress notification for both request entities being uploaded and response entities being downloaded. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The inner message handler. + + + Occurs when event entities are being downloaded. + + + Occurs when event entities are being uploaded. + + + Raises the event that handles the request of the progress. + The request. + The event handler for the request. + + + Raises the event that handles the response of the progress. + The request. + The event handler for the request. + + + Sends the specified progress message to an HTTP server for delivery. + The sent progress message. + The request. + The cancellation token. + + + Provides value for the cookie header. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The value of the name. + The values. + + + Initializes a new instance of the class. + The value of the name. + The value. + + + Creates a shallow copy of the cookie value. + A shallow copy of the cookie value. + + + Gets a collection of cookies sent by the client. + A collection object representing the client’s cookie variables. + + + Gets or sets the domain to associate the cookie with. + The name of the domain to associate the cookie with. + + + Gets or sets the expiration date and time for the cookie. + The time of day (on the client) at which the cookie expires. + + + Gets or sets a value that specifies whether a cookie is accessible by client-side script. + true if the cookie has the HttpOnly attribute and cannot be accessed through a client-side script; otherwise, false. + + + Gets a shortcut to the cookie property. + The cookie value. + + + Gets or sets the maximum age permitted for a resource. + The maximum age permitted for a resource. + + + Gets or sets the virtual path to transmit with the current cookie. + The virtual path to transmit with the cookie. + + + Gets or sets a value indicating whether to transmit the cookie using Secure Sockets Layer (SSL)—that is, over HTTPS only. + true to transmit the cookie over an SSL connection (HTTPS); otherwise, false. + + + Returns a string that represents the current object. + A string that represents the current object. + + + Indicates a value whether the string representation will be converted. + true if the string representation will be converted; otherwise, false. + The input value. + The parsed value to convert. + + + Contains cookie name and its associated cookie state. + + + Initializes a new instance of the class. + The name of the cookie. + + + Initializes a new instance of the class. + The name of the cookie. + The collection of name-value pair for the cookie. + + + Initializes a new instance of the class. + The name of the cookie. + The value of the cookie. + + + Returns a new object that is a copy of the current instance. + A new object that is a copy of the current instance. + + + Gets or sets the cookie value with the specified cookie name, if the cookie data is structured. + The cookie value with the specified cookie name. + + + Gets or sets the name of the cookie. + The name of the cookie. + + + Returns the string representation the current object. + The string representation the current object. + + + Gets or sets the cookie value, if cookie data is a simple string value. + The value of the cookie. + + + Gets or sets the collection of name-value pair, if the cookie data is structured. + The collection of name-value pair for the cookie. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/netstandard2.0/System.Net.Http.Formatting.dll b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/netstandard2.0/System.Net.Http.Formatting.dll new file mode 100644 index 0000000..d9ea892 Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/netstandard2.0/System.Net.Http.Formatting.dll differ diff --git a/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/netstandard2.0/System.Net.Http.Formatting.xml b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/netstandard2.0/System.Net.Http.Formatting.xml new file mode 100644 index 0000000..42f64e8 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/netstandard2.0/System.Net.Http.Formatting.xml @@ -0,0 +1,4025 @@ + + + + System.Net.Http.Formatting + + + + + Utility class for creating and unwrapping instances. + + + + + Formats the specified resource string using . + + A composite format string. + An object array that contains zero or more objects to format. + The formatted string. + + + + Creates an with the provided properties. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with a message saying that the argument must be an "http" or "https" URI. + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The logged . + + + + Creates an with a message saying that the argument must be an absolute URI. + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The logged . + + + + Creates an with a message saying that the argument must be an absolute URI + without a query or fragment identifier and then logs it with . + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The logged . + + + + Creates an with the provided properties. + + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with a default message. + + The name of the parameter that caused the current exception. + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with a message saying that the argument must be greater than or equal to . + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The minimum size of the argument. + The logged . + + + + Creates an with a message saying that the argument must be less than or equal to . + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The maximum size of the argument. + The logged . + + + + Creates an with a message saying that the key was not found. + + The logged . + + + + Creates an with a message saying that the key was not found. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an initialized according to guidelines. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an initialized with the provided parameters. + + The logged . + + + + Creates an initialized with the provided parameters. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an for an invalid enum argument. + + The name of the parameter that caused the current exception. + The value of the argument that failed. + A that represents the enumeration class with the valid values. + The logged . + + + + Creates an . + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an . + + Inner exception + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an . + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Helpers for safely using Task libraries. + + + + + Returns a canceled Task. The task is completed, IsCanceled = True, IsFaulted = False. + + + + + Returns a canceled Task of the given type. The task is completed, IsCanceled = True, IsFaulted = False. + + + + + Returns a completed task that has no result. + + + + + Returns an error task. The task is Completed, IsCanceled = False, IsFaulted = True + + + + + Returns an error task of the given type. The task is Completed, IsCanceled = False, IsFaulted = True + + + + + + Used as the T in a "conversion" of a Task into a Task{T} + + + + + This class is a convenient cache for per-type cancelled tasks + + + + + Cast Task to Task of object + + + + + Cast Task of T to Task of object + + + + + Throws the first faulting exception for a task which is faulted. It preserves the original stack trace when + throwing the exception. Note: It is the caller's responsibility not to pass incomplete tasks to this + method, because it does degenerate into a call to the equivalent of .Wait() on the task when it hasn't yet + completed. + + + + + Attempts to get the result value for the given task. If the task ran to completion, then + it will return true and set the result value; otherwise, it will return false. + + + + + Helpers for encoding, decoding, and parsing URI query components. In .Net 4.5 + please use the WebUtility class. + + + + + Helper extension methods for fast use of collections. + + + + + Return a new array with the value added to the end. Slow and best suited to long lived arrays with few writes relative to reads. + + + + + Return the enumerable as an Array, copying if required. Optimized for common case where it is an Array. + Avoid mutating the return value. + + + + + Return the enumerable as a Collection of T, copying if required. Optimized for the common case where it is + a Collection of T and avoiding a copy if it implements IList of T. Avoid mutating the return value. + + + + + Return the enumerable as a IList of T, copying if required. Avoid mutating the return value. + + + + + Return the enumerable as a List of T, copying if required. Optimized for common case where it is an List of T + or a ListWrapperCollection of T. Avoid mutating the return value. + + + + + Remove values from the list starting at the index start. + + + + + Return the only value from list, the type's default value if empty, or call the errorAction for 2 or more. + + + + + Returns a single value in list matching type TMatch if there is only one, null if there are none of type TMatch or calls the + errorAction with errorArg1 if there is more than one. + + + + + Convert an ICollection to an array, removing null values. Fast path for case where there are no null values. + + + + + Convert the array to a Dictionary using the keySelector to extract keys from values and the specified comparer. Optimized for array input. + + + + + Convert the list to a Dictionary using the keySelector to extract keys from values and the specified comparer. Optimized for IList of T input with fast path for array. + + + + + Convert the enumerable to a Dictionary using the keySelector to extract keys from values and the specified comparer. Fast paths for array and IList of T. + + + + + Convert the list to a Dictionary using the keySelector to extract keys from values and the specified comparer. Optimized for IList of T input. No checking for other types. + + + + + A class that inherits from Collection of T but also exposes its underlying data as List of T for performance. + + + + + Provides various internal utility functions + + + + + Quality factor to indicate a perfect match. + + + + + Quality factor to indicate no match. + + + + + The default max depth for our formatter is 256 + + + + + The default min depth for our formatter is 1 + + + + + HTTP X-Requested-With header field name + + + + + HTTP X-Requested-With header field value + + + + + HTTP Host header field name + + + + + HTTP Version token + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + Determines whether is a type. + + The type to test. + + true if is a type; otherwise, false. + + + + + Creates an empty instance. The only way is to get it from a dummy + instance. + + The created instance. + + + + Create a default reader quotas with a default depth quota of 1K + + + + + + Remove bounding quotes on a token if present + + Token to unquote. + Unquoted token. + + + + Parses valid integer strings with no leading signs, whitespace or other + + The value to parse + The result + True if value was valid; false otherwise. + + + + Abstract class to support Bson and Json. + + + + + Base class to handle serializing and deserializing strongly-typed objects using . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + Returns a to deserialize an object of the given from the given + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to deserialize. + The to read. + The if available. It may be null. + The to log events to. + A whose result will be an object of the given type. + Derived types need to support reading. + + + + + Returns a to deserialize an object of the given from the given + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to deserialize. + The to read. + The if available. It may be null. + The to log events to. + The token to monitor for cancellation requests. + A whose result will be an object of the given type. + Derived types need to support reading. + + + + + Returns a that serializes the given of the given + to the given . + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to write. + The object value to write. It may be null. + The to which to write. + The if available. It may be null. + The if available. It may be null. + A that will perform the write. + Derived types need to support writing. + + + + + Returns a that serializes the given of the given + to the given . + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to write. + The object value to write. It may be null. + The to which to write. + The if available. It may be null. + The if available. It may be null. + The token to monitor for cancellation requests. + A that will perform the write. + Derived types need to support writing. + + + + + This method converts (and interfaces that mandate it) to a for serialization purposes. + + The type to potentially be wrapped. If the type is wrapped, it's changed in place. + Returns true if the type was wrapped; false, otherwise + + + + This method converts (and interfaces that mandate it) to a for serialization purposes. + + The type to potentially be wrapped. If the type is wrapped, it's changed in place. + Returns true if the type was wrapped; false, otherwise + + + + Determines the best amongst the supported encodings + for reading or writing an HTTP entity body based on the provided . + + The content headers provided as part of the request or response. + The to use when reading the request or writing the response. + + + + Sets the default headers for content that will be formatted using this formatter. This method + is called from the constructor. + This implementation sets the Content-Type header to the value of if it is + not null. If it is null it sets the Content-Type to the default media type of this formatter. + If the Content-Type does not specify a charset it will set it using this formatters configured + . + + + Subclasses can override this method to set content headers such as Content-Type etc. Subclasses should + call the base implementation. Subclasses should treat the passed in (if not null) + as the authoritative media type and use that as the Content-Type. + + The type of the object being serialized. See . + The content headers that should be configured. + The authoritative media type. Can be null. + + + + Returns a specialized instance of the that can handle formatting a response for the given + parameters. This method is called after a formatter has been selected through content negotiation. + + + The default implementation returns this instance. Derived classes can choose to return a new instance if + they need to close over any of the parameters. + + The type being serialized. + The request. + The media type chosen for the serialization. Can be null. + An instance that can format a response to the given . + + + + Determines whether this can deserialize + an object of the specified type. + + + Derived classes must implement this method and indicate if a type can or cannot be deserialized. + + The type of object that will be deserialized. + true if this can deserialize an object of that type; otherwise false. + + + + Determines whether this can serialize + an object of the specified type. + + + Derived classes must implement this method and indicate if a type can or cannot be serialized. + + The type of object that will be serialized. + true if this can serialize an object of that type; otherwise false. + + + + Gets the default value for the specified type. + + + + + Gets or sets the maximum number of keys stored in a NameValueCollection. + + + + + Gets the mutable collection of elements supported by + this instance. + + + + + Gets the mutable collection of character encodings supported by + this instance. The encodings are + used when reading or writing data. + + + + + Collection class that validates it contains only instances + that are not null and not media ranges. + + + + + Inserts the into the collection at the specified . + + The zero-based index at which item should be inserted. + The object to insert. It cannot be null. + + + + Replaces the element at the specified . + + The zero-based index of the item that should be replaced. + The new value for the element at the specified index. It cannot be null. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + Creates a instance with the default settings used by the . + + + + + Determines whether this can read objects + of the specified . + + The of object that will be read. + true if objects of this can be read, otherwise false. + + + + Determines whether this can write objects + of the specified . + + The of object that will be written. + true if objects of this can be written, otherwise false. + + + + Called during deserialization to read an object of the specified + from the specified . + + The of object to read. + The from which to read. + The for the content being written. + The to log events to. + A whose result will be the object instance that has been read. + + + + Called during deserialization to read an object of the specified + from the specified . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to read. + The from which to read. + The to use when reading. + The to log events to. + The instance that has been read. + + + + Called during deserialization to get the . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to read. + The from which to read. + The to use when reading. + The used during deserialization. + + + + Called during serialization and deserialization to get the . + + + Public for delegating wrappers of this class. Expected to be called only from + and . + + The used during serialization and deserialization. + + + + + + + Called during serialization to write an object of the specified + to the specified . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to write. + The object to write. + The to which to write. + The to use when writing. + + + + Called during serialization to get the . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to write. + The to which to write. + The to use when writing. + The used during serialization. + + + + Gets or sets the used to configure the . + + + + + class to handle Bson. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + + + + + + + + + + + + + Gets the default media type for Json, namely "application/bson". + + + The default media type does not have any charset parameter as + the can be configured on a per + instance basis. + + + Because is mutable, the value + returned will be a new instance every time. + + + + + Helper class to serialize types by delegating them through a concrete implementation."/>. + + The interface implementing to proxy. + + + + Initialize a DelegatingEnumerable. This constructor is necessary for to work. + + + + + Initialize a DelegatingEnumerable with an . This is a helper class to proxy interfaces for . + + The instance to get the enumerator from. + + + + Get the enumerator of the associated . + + The enumerator of the source. + + + + This method is not implemented but is required method for serialization to work. Do not use. + + The item to add. Unused. + + + + Get the enumerator of the associated . + + The enumerator of the source. + + + + Represent the form data. + - This has 100% fidelity (including ordering, which is important for deserializing ordered array). + - using interfaces allows us to optimize the implementation. E.g., we can avoid eagerly string-splitting a 10gb file. + - This also provides a convenient place to put extension methods. + + + + + Initialize a form collection around incoming data. + The key value enumeration should be immutable. + + incoming set of key value pairs. Ordering is preserved. + + + + Initialize a form collection from a query string. + Uri and FormURl body have the same schema. + + + + + Initialize a form collection from a URL encoded query string. Any leading question + mark (?) will be considered part of the query string and treated as any other value. + + + + + Get the collection as a NameValueCollection. + Beware this loses some ordering. Values are ordered within a key, + but keys are no longer ordered against each other. + + + + + Get values associated with a given key. If there are multiple values, they're concatenated. + + + + + Get a value associated with a given key. + + + + + Gets values associated with a given key. If there are multiple values, they're concatenated. + + The name of the entry that contains the values to get. The name can be null. + Values associated with a given key. If there are multiple values, they're concatenated. + + + + This class provides a low-level API for parsing HTML form URL-encoded data, also known as application/x-www-form-urlencoded + data. The output of the parser is a instance. + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The corresponding to the given query string values. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The maximum depth of object graph encoded as x-www-form-urlencoded. + The corresponding to the given query string values. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The parsed result or null if parsing failed. + true if was parsed successfully; otherwise false. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The maximum depth of object graph encoded as x-www-form-urlencoded. + The parsed result or null if parsing failed. + true if was parsed successfully; otherwise false. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The maximum depth of object graph encoded as x-www-form-urlencoded. + Indicates whether to throw an exception on error or return false + The corresponding to the given query string values. + + + + Class that wraps key-value pairs. + + + This use of this class avoids a FxCop warning CA908 which happens if using various generic types. + + + + + Initializes a new instance of the class. + + The key of this instance. + The value of this instance. + + + + Gets or sets the key of this instance. + + + The key of this instance. + + + + + Gets or sets the value of this instance. + + + The value of this instance. + + + + + Interface to log events that occur during formatter reads. + + + + + Logs an error. + + The path to the member for which the error is being logged. + The error message to be logged. + + + + Logs an error. + + The path to the member for which the error is being logged. + The exception to be logged. + + + + class to handle Json. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + + + + + + + Gets the default media type for Json, namely "application/json". + + + The default media type does not have any charset parameter as + the can be configured on a per + instance basis. + + + Because is mutable, the value + returned will be a new instance every time. + + + + + Gets or sets a value indicating whether to indent elements when writing data. + + + + + Constants related to media types. + + + + + Gets a instance representing application/octet-stream. + + + A new instance representing application/octet-stream. + + + + + Gets a instance representing application/xml. + + + A new instance representing application/xml. + + + + + Gets a instance representing application/json. + + + A new instance representing application/json. + + + + + Gets a instance representing text/xml. + + + A new instance representing text/xml. + + + + + Gets a instance representing text/json. + + + A new instance representing text/json. + + + + + Gets a instance representing application/x-www-form-urlencoded. + + + A new instance representing application/x-www-form-urlencoded. + + + + + Gets a instance representing application/bson. + + + A new instance representing application/bson. + + + Not yet a standard. In particular this media type is not currently listed at + http://www.iana.org/assignments/media-types/application. + + + + + Collection class that contains instances. + + + + + Initializes a new instance of the class. + + + This collection will be initialized to contain default + instances for Xml, JsonValue and Json. + + + + + Initializes a new instance of the class. + + A collection of instances to place in the collection. + + + + Helper to search a collection for a formatter that can read the .NET type in the given mediaType. + + .NET type to read + media type to match on. + Formatter that can read the type. Null if no formatter found. + + + + Helper to search a collection for a formatter that can write the .NET type in the given mediaType. + + .NET type to read + media type to match on. + Formatter that can write the type. Null if no formatter found. + + + + Returns true if the type is one of those loosely defined types that should be excluded from validation + + .NET to validate + true if the type should be excluded. + + + + Creates a collection of new instances of the default s. + + The collection of default instances. + + + + Gets the to use for Xml. + + + + + Gets the to use for Json. + + + + + Extension methods for . + + + + + Determines whether two instances match. The instance + is said to match if and only if + is a strict subset of the values and parameters of . + That is, if the media type and media type parameters of are all present + and match those of then it is a match even though may have additional + parameters. + + The first media type. + The second media type. + true if this is a subset of ; false otherwise. + + + + Determines whether two instances match. The instance + is said to match if and only if + is a strict subset of the values and parameters of . + That is, if the media type and media type parameters of are all present + and match those of then it is a match even though may have additional + parameters. + + The first media type. + The second media type. + Indicates whether is a regular media type, a subtype media range, or a full media range + true if this is a subset of ; false otherwise. + + + + Not a media type range + + + + + A subtype media range, e.g. "application/*". + + + + + An all media range, e.g. "*/*". + + + + + Buffer-oriented parsing of HTML form URL-ended, also known as application/x-www-form-urlencoded, data. + + + + + Initializes a new instance of the class. + + The collection to which name value pairs are added as they are parsed. + Maximum length of all the individual name value pairs. + + + + Parse a buffer of URL form-encoded name-value pairs and add them to the collection. + Bytes are parsed in a consuming manner from the beginning of the buffer meaning that the same bytes can not be + present in the buffer. + + Buffer from where data is read + Size of buffer + Offset into buffer + Indicates whether the end of the URL form-encoded data has been reached. + State of the parser. Call this method with new data until it reaches a final state. + + + + Maintains information about the current header field being parsed. + + + + + Copies current name value pair field to the provided collection instance. + + The collection to copy into. + + + + Copies current name-only to the provided collection instance. + + The collection to copy into. + + + + Clears this instance. + + + + + Gets the name of the name value pair. + + + + + Gets the value of the name value pair + + + + + The combines for parsing the HTTP Request Line + and for parsing each header field. + + + + + Initializes a new instance of the class. + + The parsed HTTP request without any header sorting. + + + + Initializes a new instance of the class. + + The parsed HTTP request without any header sorting. + The max length of the HTTP request line. + The max length of the HTTP header. + + + + Parse an HTTP request header and fill in the instance. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + State of the parser. + + + + HTTP Request Line parser for parsing the first line (the request line) in an HTTP request. + + + + + Initializes a new instance of the class. + + instance where the request line properties will be set as they are parsed. + Maximum length of HTTP header. + + + + Parse an HTTP request line. + Bytes are parsed in a consuming manner from the beginning of the request buffer meaning that the same bytes can not be + present in the request buffer. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + State of the parser. + + + + The combines for parsing the HTTP Status Line + and for parsing each header field. + + + + + Initializes a new instance of the class. + + The parsed HTTP response without any header sorting. + + + + Initializes a new instance of the class. + + The parsed HTTP response without any header sorting. + The max length of the HTTP status line. + The max length of the HTTP header. + + + + Parse an HTTP response header and fill in the instance. + + Response buffer from where response is read + Size of response buffer + Offset into response buffer + State of the parser. + + + + HTTP Status line parser for parsing the first line (the status line) in an HTTP response. + + + + + Initializes a new instance of the class. + + instance where the response line properties will be set as they are parsed. + Maximum length of HTTP header. + + + + Parse an HTTP status line. + Bytes are parsed in a consuming manner from the beginning of the response buffer meaning that the same bytes can not be + present in the response buffer. + + Response buffer from where response is read + Size of response buffer + Offset into response buffer + State of the parser. + + + + Buffer-oriented RFC 5322 style Internet Message Format parser which can be used to pass header + fields used in HTTP and MIME message entities. + + + + + Initializes a new instance of the class. + + Concrete instance where header fields are added as they are parsed. + Maximum length of complete header containing all the individual header fields. + + + + Parse a buffer of RFC 5322 style header fields and add them to the collection. + Bytes are parsed in a consuming manner from the beginning of the buffer meaning that the same bytes can not be + present in the buffer. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + State of the parser. Call this method with new data until it reaches a final state. + + + + Maintains information about the current header field being parsed. + + + + + Copies current header field to the provided instance. + + The headers. + + + + Determines whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Clears this instance. + + + + + Gets the header field name. + + + + + Gets the header field value. + + + + + Complete MIME multipart parser that combines for parsing the MIME message into individual body parts + and for parsing each body part into a MIME header and a MIME body. The caller of the parser is returned + the resulting MIME bodies which can then be written to some output. + + + + + Initializes a new instance of the class. + + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + + + + Initializes a new instance of the class. + + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + The max length of the entire MIME multipart message. + The max length of the MIME header within each MIME body part. + + + + Determines whether the specified content is MIME multipart content. + + The content. + + true if the specified content is MIME multipart content; otherwise, false. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Parses the data provided and generates parsed MIME body part bodies in the form of which are ready to + write to the output stream. + + The data to parse + The number of bytes available in the input data + Parsed instances. + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Buffer-oriented MIME multipart parser. + + + + + Initializes a new instance of the class. + + Message boundary + Maximum length of entire MIME multipart message. + + + + Parse a MIME multipart message. Bytes are parsed in a consuming + manner from the beginning of the request buffer meaning that the same bytes can not be + present in the request buffer. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + Any body part that was considered as a potential MIME multipart boundary but which was in fact part of the body. + The bulk of the body part. + Indicates whether the final body part has been found. + In order to get the complete body part, the caller is responsible for concatenating the contents of the + and out parameters. + State of the parser. + + + + Represents the overall state of the . + + + + + Need more data + + + + + Parsing of a complete body part succeeded. + + + + + Bad data format + + + + + Data exceeds the allowed size + + + + + Maintains information about the current body part being parsed. + + + + + Initializes a new instance of the class. + + The reference boundary. + + + + Resets the boundary offset. + + + + + Resets the boundary. + + + + + Appends byte to the current boundary. + + The data to append to the boundary. + + + + Appends array of bytes to the current boundary. + + The data to append to the boundary. + The offset into the data. + The number of bytes to append. + + + + Gets the discarded boundary. + + An containing the discarded boundary. + + + + Determines whether current boundary is valid. + + + true if curent boundary is valid; otherwise, false. + + + + + Clears the body part. + + + + + Clears all. + + + + + Gets or sets a value indicating whether this instance has potential boundary left over. + + + true if this instance has potential boundary left over; otherwise, false. + + + + + Gets the boundary delta. + + + + + Gets or sets the body part. + + + The body part. + + + + + Gets a value indicating whether this body part instance is final. + + + true if this body part instance is final; otherwise, false. + + + + + Represents the overall state of various parsers. + + + + + Need more data + + + + + Parsing completed (final) + + + + + Bad data format (final) + + + + + Data exceeds the allowed size (final) + + + + + Helper class for validating values. + + + + + Determines whether the specified is defined by the + enumeration. + + The value to verify. + + true if the specified options is defined; otherwise, false. + + + + + Validates the specified and throws an + exception if not valid. + + The value to validate. + Name of the parameter to use if throwing exception. + + + + class to handle Xml. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + Registers the to use to read or write + the specified . + + The type of object that will be serialized or deserialized with . + The instance to use. + + + + Registers the to use to read or write + the specified type. + + The type of object that will be serialized or deserialized with . + The instance to use. + + + + Registers the to use to read or write + the specified . + + The type of objects for which will be used. + The instance to use. + + + + Registers the to use to read or write + the specified type. + + The type of object that will be serialized or deserialized with . + The instance to use. + + + + Unregisters the serializer currently associated with the given . + + + Unless another serializer is registered for the , a default one will be created. + + The type of object whose serializer should be removed. + true if a serializer was registered for the ; otherwise false. + + + + Determines whether this can read objects + of the specified . + + The type of object that will be read. + true if objects of this can be read, otherwise false. + + + + Determines whether this can write objects + of the specified . + + The type of object that will be written. + true if objects of this can be written, otherwise false. + + + + Called during deserialization to read an object of the specified + from the specified . + + The type of object to read. + The from which to read. + The for the content being read. + The to log events to. + A whose result will be the object instance that has been read. + + + + Called during deserialization to get the XML serializer to use for deserializing objects. + + The type of object to deserialize. + The for the content being read. + An instance of or to use for deserializing the object. + + + + Called during deserialization to get the XML reader to use for reading objects from the stream. + + The to read from. + The for the content being read. + The to use for reading objects. + + + + + + + Called during serialization to get the XML serializer to use for serializing objects. + + The type of object to serialize. + The object to serialize. + The for the content being written. + An instance of or to use for serializing the object. + + + + Called during serialization to get the XML writer to use for writing objects to the stream. + + The to write to. + The for the content being written. + The to use for writing objects. + + + + Called during deserialization to get the XML serializer. + + The type of object that will be serialized or deserialized. + The used to serialize the object. + + + + Called during deserialization to get the DataContractSerializer serializer. + + The type of object that will be serialized or deserialized. + The used to serialize the object. + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + Gets the default media type for xml, namely "application/xml". + + + + The default media type does not have any charset parameter as + the can be configured on a per + instance basis. + + Because is mutable, the value + returned will be a new instance every time. + + + + + Gets or sets a value indicating whether to use instead of by default. + + + true if use by default; otherwise, false. The default is false. + + + + + Gets or sets a value indicating whether to indent elements when writing data. + + + + + Gets the to be used while writing. + + + + + NameValueCollection to represent form data and to generate form data output. + + + + + Creates a new instance + + + + + Adds a name-value pair to the collection. + + The name to be added as a case insensitive string. + The value to be added. + + + + Converts the content of this instance to its equivalent string representation. + + The string representation of the value of this instance, multiple values with a single key are comma separated. + + + + Gets the values associated with the specified name + combined into one comma-separated list. + + The name of the entry that contains the values to get. The name can be null. + + A that contains a comma-separated list of url encoded values associated + with the specified name if found; otherwise, null. The values are Url encoded. + + + + + Gets the values associated with the specified name. + + The + A that contains url encoded values associated with the name, or null if the name does not exist. + + + + + + + + + + Gets the values associated with the specified name + combined into one comma-separated list. + + The name of the entry that contains the values to get. The name can be null. + A that contains a comma-separated list of url encoded values associated + with the specified name if found; otherwise, null. The values are Url encoded. + + + + Gets the number of names in the collection. + + + + + Extension methods to allow strongly typed objects to be read from the query component of instances. + + + + + Parses the query portion of the specified . + + The instance from which to read. + A containing the parsed result. + + + + Reads HTML form URL encoded data provided in the query component as a object. + + The instance from which to read. + An object to be initialized with this instance or null if the conversion cannot be performed. + true if the query component can be read as ; otherwise false. + + + + Reads HTML form URL encoded data provided in the query component as an of the given . + + The instance from which to read. + The type of the object to read. + An object to be initialized with this instance or null if the conversion cannot be performed. + true if the query component can be read as the specified type; otherwise false. + + + + Reads HTML form URL encoded data provided in the query component as an of type . + + The type of the object to read. + The instance from which to read. + An object to be initialized with this instance or null if the conversion cannot be performed. + true if the query component can be read as the specified type; otherwise false. + + + + Provides data for the events generated by . + + + + + Initializes a new instance of the with the parameters given. + + The percent completed of the overall exchange. + Any user state provided as part of reading or writing the data. + The current number of bytes either received or sent. + The total number of bytes expected to be received or sent. + + + + Gets the current number of bytes transferred. + + + + + Gets the total number of expected bytes to be sent or received. If the number is not known then this is null. + + + + + Wraps an inner in order to insert a on writing data. + + + + + The provides a mechanism for getting progress event notifications + when sending and receiving data in connection with exchanging HTTP requests and responses. + Register event handlers for the events and + to see events for data being sent and received. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The inner handler to which this handler submits requests. + + + + Raises the event. + + The request. + The instance containing the event data. + + + + Raises the event. + + The request. + The instance containing the event data. + + + + Occurs every time the client sending data is making progress. + + + + + Occurs every time the client receiving data is making progress. + + + + + This implementation of registers how much data has been + read (received) versus written (sent) for a particular HTTP operation. The implementation + is client side in that the total bytes to send is taken from the request and the total + bytes to read is taken from the response. In a server side scenario, it would be the + other way around (reading the request and writing the response). + + + + + Stream that delegates to inner stream. + This is taken from System.Net.Http + + + + + Extension methods that aid in making formatted requests using . + + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Creates a new instance configured with the handlers provided and with an + as the innermost handler. + + An ordered list of instances to be invoked as an + travels from the to the network and an + travels from the network back to . + The handlers are invoked in a top-down fashion. That is, the first entry is invoked first for + an outbound request message but last for an inbound response message. + An instance with the configured handlers. + + + + Creates a new instance configured with the handlers provided and with the + provided as the innermost handler. + + The inner handler represents the destination of the HTTP message channel. + An ordered list of instances to be invoked as an + travels from the to the network and an + travels from the network back to . + The handlers are invoked in a top-down fashion. That is, the first entry is invoked first for + an outbound request message but last for an inbound response message. + An instance with the configured handlers. + + + + Creates an instance of an using the instances + provided by . The resulting pipeline can be used to manually create + or instances with customized message handlers. + + The inner handler represents the destination of the HTTP message channel. + An ordered list of instances to be invoked as part + of sending an and receiving an . + The handlers are invoked in a top-down fashion. That is, the first entry is invoked first for + an outbound request message but last for an inbound response message. + The HTTP message channel. + + + + Extension methods to allow strongly typed objects to be read from instances. + + + + + Returns a that will yield an object of the specified + from the instance. + + This override use the built-in collection of formatters. + The instance from which to read. + The type of the object to read. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance. + + This override use the built-in collection of formatters. + The instance from which to read. + The type of the object to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + The to log events to. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + The to log events to. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + This override use the built-in collection of formatters. + The type of the object to read. + The instance from which to read. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + This override use the built-in collection of formatters. + The type of the object to read. + The instance from which to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + The to log events to. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + The to log events to. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Extension methods to read and entities from instances. + + + + + Determines whether the specified content is HTTP request message content. + + The content. + + true if the specified content is HTTP message content; otherwise, false. + + + + + Determines whether the specified content is HTTP response message content. + + The content. + + true if the specified content is HTTP message content; otherwise, false. + + + + + Read the as an . + + The content to read. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + The max length of the HTTP header. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + The max length of the HTTP header. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + The max length of the HTTP header. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + The max length of the HTTP header. + The token to monitor for cancellation requests. + The parsed instance. + + + + Creates the request URI by combining scheme (provided) with parsed values of + host and path. + + The URI scheme to use for the request URI. + The unsorted HTTP request. + A fully qualified request URI. + + + + Copies the unsorted header fields to a sorted collection. + + The unsorted source headers + The destination or . + The input used to form any being part of this HTTP request. + Start location of any request entity within the . + An instance if header fields contained and . + + + + Creates an based on information provided in . + + The URI scheme to use for the request URI. + The unsorted HTTP request. + The input used to form any being part of this HTTP request. + Start location of any request entity within the . + A newly created instance. + + + + Creates an based on information provided in . + + The unsorted HTTP Response. + The input used to form any being part of this HTTP Response. + Start location of any Response entity within the . + A newly created instance. + + + + Extension methods to read MIME multipart entities from instances. + + + + + Determines whether the specified content is MIME multipart content. + + The content. + + true if the specified content is MIME multipart content; otherwise, false. + + + + + Determines whether the specified content is MIME multipart content with the + specified subtype. For example, the subtype mixed would match content + with a content type of multipart/mixed. + + The content. + The MIME multipart subtype to match. + + true if the specified content is MIME multipart content with the specified subtype; otherwise, false. + + + + + Reads all body parts within a MIME multipart message into memory using a . + + An existing instance to use for the object's content. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message into memory using a . + + An existing instance to use for the object's content. + The token to monitor for cancellation requests. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + The token to monitor for cancellation requests. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written and as read buffer size. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + Size of the buffer used to read the contents. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written and as read buffer size. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + Size of the buffer used to read the contents. + The token to monitor for cancellation requests. + A representing the tasks of getting the result of reading the MIME content. + + + + Managing state for asynchronous read and write operations + + + + + Gets the that we read from. + + + + + Gets the collection of parsed instances. + + + + + The data buffer that we use for reading data from the input stream into before processing. + + + + + Gets the MIME parser instance used to parse the data + + + + + Derived class which can encapsulate an + or an as an entity with media type "application/http". + + + + + Initializes a new instance of the class encapsulating an + . + + The instance to encapsulate. + + + + Initializes a new instance of the class encapsulating an + . + + The instance to encapsulate. + + + + Validates whether the content contains an HTTP Request or an HTTP Response. + + The content to validate. + if set to true if the content is either an HTTP Request or an HTTP Response. + Indicates whether validation failure should result in an or not. + true if content is either an HTTP Request or an HTTP Response + + + + Asynchronously serializes the object's content to the given . + + The to which to write. + The associated . + A instance that is asynchronously serializing the object's content. + + + + Computes the length of the stream if possible. + + The computed length of the stream. + true if the length has been computed; otherwise false. + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Serializes the HTTP request line. + + Where to write the request line. + The HTTP request. + + + + Serializes the HTTP status line. + + Where to write the status line. + The HTTP response. + + + + Serializes the header fields. + + Where to write the status line. + The headers to write. + + + + Gets the HTTP request message. + + + + + Gets the HTTP response message. + + + + + All of the existing non-abstract implementations, namely + , , and + enforce strict rules on what kinds of HTTP header fields can be added to each collection. + When parsing the "application/http" media type we need to just get the unsorted list. It + will get sorted later. + + + + + Represents the HTTP Request Line and header parameters parsed by + and . + + + + + Initializes a new instance of the class. + + + + + Gets or sets the HTTP method. + + + The HTTP method. + + + + + Gets or sets the HTTP request URI portion that is carried in the RequestLine (i.e the URI path + query). + + + The request URI. + + + + + Gets or sets the HTTP version. + + + The HTTP version. + + + + + Gets the unsorted HTTP request headers. + + + + + Represents the HTTP Status Line and header parameters parsed by + and . + + + + + Initializes a new instance of the class. + + + + + Gets or sets the HTTP version. + + + The HTTP version. + + + + + Gets or sets the + + + The HTTP status code + + + + + Gets or sets the HTTP reason phrase + + + The response reason phrase + + + + + Gets the unsorted HTTP request headers. + + + + + This implements a read-only, forward-only stream around another readable stream, to ensure + that there is an appropriate encoding preamble in the stream. + + + + + Maintains information about MIME body parts parsed by . + + + + + Initializes a new instance of the class. + + The stream provider. + The max length of the MIME header within each MIME body part. + The part's parent content + + + + Gets the part's content as an HttpContent. + + + The part's content, or null if the part had no content. + + + + + Writes the into the part's output stream. + + The current segment to be written to the part's output stream. + The token to monitor for cancellation requests. + + + + Gets the output stream. + + The output stream to write the body part to. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + In the success case, the HttpContent is to be used after this Part has been parsed and disposed of. + Only if Dispose has been called on a non-completed part, the parsed HttpContent needs to be disposed of as well. + + + + + Resets the output stream by either closing it or, in the case of a resetting + position to 0 so that it can be read by the caller. + + + + + Gets the header parser. + + + The header parser. + + + + + Gets the set of pointing to the read buffer with + contents of this body part. + + + + + Gets or sets a value indicating whether the body part has been completed. + + + true if this instance is complete; otherwise, false. + + + + + Gets or sets a value indicating whether this is the final body part. + + + true if this instance is complete; otherwise, false. + + + + + Provides a implementation that returns a instance. + This facilitates deserialization or other manipulation of the contents in memory. + + + + + An implementation examines the headers provided by the MIME multipart parser + as part of the MIME multipart extension methods (see ) and decides + what kind of stream to return for the body part to be written to. + + + + + Initializes a new instance of the class. + + + + + When a MIME multipart body part has been parsed this method is called to get a stream for where to write the body part to. + + The parent MIME multipart instance. + The header fields describing the body parts content. Looking for header fields such as + Content-Type and Content-Disposition can help provide the appropriate stream. In addition to using the information + in the provided header fields, it is also possible to add new header fields or modify existing header fields. This can + be useful to get around situations where the Content-type may say application/octet-stream but based on + analyzing the Content-Disposition header field it is found that the content in fact is application/json, for example. + A stream instance where the contents of a body part will be written to. + + + + Immediately upon reading the last MIME body part but before completing the read task, this method is + called to enable the to do any post processing on the + instances that have been read. For example, it can be used to copy the data to another location, or perform + some other kind of post processing on the data before completing the read operation. + + A representing the post processing. + + + + Immediately upon reading the last MIME body part but before completing the read task, this method is + called to enable the to do any post processing on the + instances that have been read. For example, it can be used to copy the data to another location, or perform + some other kind of post processing on the data before completing the read operation. + + The token to monitor for cancellation requests. + A representing the post processing. + + + + Gets the collection of instances where each instance represents a MIME body part. + + + + + This implementation returns a instance. + This facilitates deserialization or other manipulation of the contents in memory. + + + + + An suited for reading MIME body parts following the + multipart/related media type as defined in RFC 2387 (see http://www.ietf.org/rfc/rfc2387.txt). + + + + + Looks for the "start" parameter of the parent's content type and then finds the corresponding + child HttpContent with a matching Content-ID header field. + + The matching child or null if none found. + + + + Looks for a parameter in the . + + The matching parameter or null if none found. + + + + Gets the instance that has been marked as the root content in the + MIME multipart related message using the start parameter. If no start parameter is + present then pick the first of the children. + + + + + Contains a value as well as an associated that will be + used to serialize the value when writing this content. + + + + + Initializes a new instance of the class. + + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + + + + Initializes a new instance of the class. + + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Initializes a new instance of the class. + + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Asynchronously serializes the object's content to the given . + + The to which to write. + The associated . + A instance that is asynchronously serializing the object's content. + + + + Computes the length of the stream if possible. + + The computed length of the stream. + true if the length has been computed; otherwise false. + + + + Gets the type of object managed by this instance. + + + + + The formatter associated with this content instance. + + + + + Gets or sets the value of the current . + + + + + Generic form of . + + The type of object this class will contain. + + + + Initializes a new instance of the class. + + The value of the object this instance will contain. + The formatter to use when serializing the value. + + + + Initializes a new instance of the class. + + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Initializes a new instance of the class. + + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Provides an implementation that exposes an output + which can be written to directly. The ability to push data to the output stream differs from the + where data is pulled and not pushed. + + + + + Initializes a new instance of the class. The + action is called when an output stream + has become available allowing the action to write to it directly. When the + stream is closed, it will signal to the content that is has completed and the + HTTP request or response will be completed. + + The action to call when an output stream is available. + + + + Initializes a new instance of the class. + + The action to call when an output stream is available. The stream is automatically + closed when the return task is completed. + + + + Initializes a new instance of the class with the given media type. + + + + + Initializes a new instance of the class with the given media type. + + + + + Initializes a new instance of the class with the given . + + + + + Initializes a new instance of the class with the given . + + + + + When this method is called, it calls the action provided in the constructor with the output + stream to write to. Once the action has completed its work it closes the stream which will + close this content instance and complete the HTTP request or response. + + The to which to write. + The associated . + A instance that is asynchronously serializing the object's content. + + + + Computes the length of the stream if possible. + + The computed length of the stream. + true if the length has been computed; otherwise false. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Async Callback threw an exception.. + + + + + Looks up a localized string similar to The IAsyncResult implementation '{0}' tried to complete a single operation multiple times. This could be caused by an incorrect application IAsyncResult implementation or other extensibility code, such as an IAsyncResult that returns incorrect CompletedSynchronously values or invokes the AsyncCallback multiple times.. + + + + + Looks up a localized string similar to End cannot be called twice on an AsyncResult.. + + + + + Looks up a localized string similar to An incorrect IAsyncResult was provided to an 'End' method. The IAsyncResult object passed to 'End' must be the one returned from the matching 'Begin' or passed to the callback provided to 'Begin'.. + + + + + Looks up a localized string similar to Found zero byte ranges. There must be at least one byte range provided.. + + + + + Looks up a localized string similar to The range unit '{0}' is not valid. The range must have a unit of '{1}'.. + + + + + Looks up a localized string similar to The stream over which '{0}' provides a range view must have a length greater than or equal to 1.. + + + + + Looks up a localized string similar to The 'From' value of the range must be less than or equal to {0}.. + + + + + Looks up a localized string similar to None of the requested ranges ({0}) overlap with the current extent of the selected resource.. + + + + + Looks up a localized string similar to The requested range ({0}) does not overlap with the current extent of the selected resource.. + + + + + Looks up a localized string similar to The stream over which '{0}' provides a range view must be seekable.. + + + + + Looks up a localized string similar to This is a read-only stream.. + + + + + Looks up a localized string similar to A null '{0}' is not valid.. + + + + + Looks up a localized string similar to The '{0}' of '{1}' cannot be used as a supported media type because it is a media range.. + + + + + Looks up a localized string similar to The '{0}' type cannot accept a null value for the value type '{1}'.. + + + + + Looks up a localized string similar to The specified value is not a valid cookie name.. + + + + + Looks up a localized string similar to Cookie cannot be null.. + + + + + Looks up a localized string similar to The '{0}' list is invalid because it contains one or more null items.. + + + + + Looks up a localized string similar to The '{0}' list is invalid because the property '{1}' of '{2}' is not null.. + + + + + Looks up a localized string similar to Error reading HTML form URL-encoded data stream.. + + + + + Looks up a localized string similar to Mismatched types at node '{0}'.. + + + + + Looks up a localized string similar to Error parsing HTML form URL-encoded data, byte {0}.. + + + + + Looks up a localized string similar to Invalid HTTP status code: '{0}'. The status code must be between {1} and {2}.. + + + + + Looks up a localized string similar to Invalid HTTP version: '{0}'. The version must start with the characters '{1}'.. + + + + + Looks up a localized string similar to The '{0}' of the '{1}' has already been read.. + + + + + Looks up a localized string similar to The '{0}' must be seekable in order to create an '{1}' instance containing an entity body. . + + + + + Looks up a localized string similar to Error reading HTTP message.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a content type header with a value of '{1}'.. + + + + + Looks up a localized string similar to HTTP Request URI cannot be an empty string.. + + + + + Looks up a localized string similar to Error parsing HTTP message header byte {0} of message {1}.. + + + + + Looks up a localized string similar to An invalid number of '{0}' header fields were present in the HTTP Request. It must contain exactly one '{0}' header field but found {1}.. + + + + + Looks up a localized string similar to Invalid URI scheme: '{0}'. The URI scheme must be a valid '{1}' scheme.. + + + + + Looks up a localized string similar to Invalid array at node '{0}'.. + + + + + Looks up a localized string similar to Traditional style array without '[]' is not supported with nested object at location {0}.. + + + + + Looks up a localized string similar to The '{0}' method returned null. It must return a JSON serializer instance.. + + + + + Looks up a localized string similar to The '{0}' method threw an exception when attempting to create a JSON serializer.. + + + + + Looks up a localized string similar to The maximum read depth ({0}) has been exceeded because the form url-encoded data being read has more levels of nesting than is allowed.. + + + + + Looks up a localized string similar to The number of keys in a NameValueCollection has exceeded the limit of '{0}'. You can adjust it by modifying the MaxHttpCollectionKeys property on the '{1}' class.. + + + + + Looks up a localized string similar to Error parsing BSON data; unable to read content as a {0}.. + + + + + Looks up a localized string similar to Error parsing BSON data; unexpected dictionary content: {0} entries, first key '{1}'.. + + + + + Looks up a localized string similar to The '{0}' method returned null. It must return a JSON reader instance.. + + + + + Looks up a localized string similar to The '{0}' method returned null. It must return a JSON writer instance.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support reading because it does not implement the ReadFromStreamAsync method.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support reading because it does not implement the ReadFromStream method.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support writing because it does not implement the WriteToStreamAsync method.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support writing because it does not implement the WriteToStream method.. + + + + + Looks up a localized string similar to No encoding found for media type formatter '{0}'. There must be at least one supported encoding registered in order for the media type formatter to read or write content.. + + + + + Looks up a localized string similar to MIME multipart boundary cannot end with an empty space.. + + + + + Looks up a localized string similar to Did not find required '{0}' header field in MIME multipart body part.. + + + + + Looks up a localized string similar to Could not determine a valid local file name for the multipart body part.. + + + + + Looks up a localized string similar to Nested bracket is not valid for '{0}' data at position {1}.. + + + + + Looks up a localized string similar to A non-null request URI must be provided to determine if a '{0}' matches a given request or response message.. + + + + + Looks up a localized string similar to No MediaTypeFormatter is available to read an object of type '{0}' from content with media type '{1}'.. + + + + + Looks up a localized string similar to An object of type '{0}' cannot be used with a type parameter of '{1}'.. + + + + + Looks up a localized string similar to The configured formatter '{0}' cannot write an object of type '{1}'.. + + + + + Looks up a localized string similar to Query string name cannot be null.. + + + + + Looks up a localized string similar to Unexpected end of HTTP message stream. HTTP message is not complete.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a '{1}' content-type header with a '{2}' parameter.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a content-type header value. '{0}' instances must have a content-type header starting with '{1}'.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a content type header starting with '{1}'.. + + + + + Looks up a localized string similar to Error reading MIME multipart body part.. + + + + + Looks up a localized string similar to Error writing MIME multipart body part to output stream.. + + + + + Looks up a localized string similar to Error parsing MIME multipart body part header byte {0} of data segment {1}.. + + + + + Looks up a localized string similar to Error parsing MIME multipart message byte {0} of data segment {1}.. + + + + + Looks up a localized string similar to The stream provider of type '{0}' threw an exception.. + + + + + Looks up a localized string similar to The stream provider of type '{0}' returned null. It must return a writable '{1}' instance.. + + + + + Looks up a localized string similar to The stream provider of type '{0}' returned a read-only stream. It must return a writable '{1}' instance.. + + + + + Looks up a localized string similar to Unexpected end of MIME multipart stream. MIME multipart message is not complete.. + + + + + Looks up a localized string similar to The '{0}' serializer cannot serialize the type '{1}'.. + + + + + Looks up a localized string similar to There is an unmatched opened bracket for the '{0}' at position {1}.. + + + + + Looks up a localized string similar to Indentation is not supported by '{0}'.. + + + + + Looks up a localized string similar to The object of type '{0}' returned by {1} must be an instance of either XmlObjectSerializer or XmlSerializer.. + + + + + Looks up a localized string similar to The object returned by {0} must not be a null value.. + + + + + Defines an exception type for signalling that a request's media type was not supported. + + + + + Initializes a new instance of the class. + + The message that describes the error. + The unsupported media type. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Relative URI values are not supported: '{0}'. The URI must be absolute.. + + + + + Looks up a localized string similar to Unsupported URI scheme: '{0}'. The URI scheme must be either '{1}' or '{2}'.. + + + + + Looks up a localized string similar to Value must be greater than or equal to {0}.. + + + + + Looks up a localized string similar to Value must be less than or equal to {0}.. + + + + + Looks up a localized string similar to The argument '{0}' is null or empty.. + + + + + Looks up a localized string similar to URI must not contain a query component or a fragment identifier.. + + + + + Looks up a localized string similar to The value of argument '{0}' ({1}) is invalid for Enum type '{2}'.. + + + + diff --git a/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/portable-wp8%2Bnetcore45%2Bnet45%2Bwp81%2Bwpa81/System.Net.Http.Formatting.dll b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/portable-wp8%2Bnetcore45%2Bnet45%2Bwp81%2Bwpa81/System.Net.Http.Formatting.dll new file mode 100644 index 0000000..edf2874 Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/portable-wp8%2Bnetcore45%2Bnet45%2Bwp81%2Bwpa81/System.Net.Http.Formatting.dll differ diff --git a/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/portable-wp8%2Bnetcore45%2Bnet45%2Bwp81%2Bwpa81/System.Net.Http.Formatting.xml b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/portable-wp8%2Bnetcore45%2Bnet45%2Bwp81%2Bwpa81/System.Net.Http.Formatting.xml new file mode 100644 index 0000000..42f64e8 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.Client.5.2.4/lib/portable-wp8%2Bnetcore45%2Bnet45%2Bwp81%2Bwpa81/System.Net.Http.Formatting.xml @@ -0,0 +1,4025 @@ + + + + System.Net.Http.Formatting + + + + + Utility class for creating and unwrapping instances. + + + + + Formats the specified resource string using . + + A composite format string. + An object array that contains zero or more objects to format. + The formatted string. + + + + Creates an with the provided properties. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with a message saying that the argument must be an "http" or "https" URI. + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The logged . + + + + Creates an with a message saying that the argument must be an absolute URI. + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The logged . + + + + Creates an with a message saying that the argument must be an absolute URI + without a query or fragment identifier and then logs it with . + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The logged . + + + + Creates an with the provided properties. + + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with a default message. + + The name of the parameter that caused the current exception. + The logged . + + + + Creates an with the provided properties. + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an with a message saying that the argument must be greater than or equal to . + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The minimum size of the argument. + The logged . + + + + Creates an with a message saying that the argument must be less than or equal to . + + The name of the parameter that caused the current exception. + The value of the argument that causes this exception. + The maximum size of the argument. + The logged . + + + + Creates an with a message saying that the key was not found. + + The logged . + + + + Creates an with a message saying that the key was not found. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an initialized according to guidelines. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an initialized with the provided parameters. + + The logged . + + + + Creates an initialized with the provided parameters. + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an for an invalid enum argument. + + The name of the parameter that caused the current exception. + The value of the argument that failed. + A that represents the enumeration class with the valid values. + The logged . + + + + Creates an . + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an . + + Inner exception + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Creates an . + + A composite format string explaining the reason for the exception. + An object array that contains zero or more objects to format. + The logged . + + + + Helpers for safely using Task libraries. + + + + + Returns a canceled Task. The task is completed, IsCanceled = True, IsFaulted = False. + + + + + Returns a canceled Task of the given type. The task is completed, IsCanceled = True, IsFaulted = False. + + + + + Returns a completed task that has no result. + + + + + Returns an error task. The task is Completed, IsCanceled = False, IsFaulted = True + + + + + Returns an error task of the given type. The task is Completed, IsCanceled = False, IsFaulted = True + + + + + + Used as the T in a "conversion" of a Task into a Task{T} + + + + + This class is a convenient cache for per-type cancelled tasks + + + + + Cast Task to Task of object + + + + + Cast Task of T to Task of object + + + + + Throws the first faulting exception for a task which is faulted. It preserves the original stack trace when + throwing the exception. Note: It is the caller's responsibility not to pass incomplete tasks to this + method, because it does degenerate into a call to the equivalent of .Wait() on the task when it hasn't yet + completed. + + + + + Attempts to get the result value for the given task. If the task ran to completion, then + it will return true and set the result value; otherwise, it will return false. + + + + + Helpers for encoding, decoding, and parsing URI query components. In .Net 4.5 + please use the WebUtility class. + + + + + Helper extension methods for fast use of collections. + + + + + Return a new array with the value added to the end. Slow and best suited to long lived arrays with few writes relative to reads. + + + + + Return the enumerable as an Array, copying if required. Optimized for common case where it is an Array. + Avoid mutating the return value. + + + + + Return the enumerable as a Collection of T, copying if required. Optimized for the common case where it is + a Collection of T and avoiding a copy if it implements IList of T. Avoid mutating the return value. + + + + + Return the enumerable as a IList of T, copying if required. Avoid mutating the return value. + + + + + Return the enumerable as a List of T, copying if required. Optimized for common case where it is an List of T + or a ListWrapperCollection of T. Avoid mutating the return value. + + + + + Remove values from the list starting at the index start. + + + + + Return the only value from list, the type's default value if empty, or call the errorAction for 2 or more. + + + + + Returns a single value in list matching type TMatch if there is only one, null if there are none of type TMatch or calls the + errorAction with errorArg1 if there is more than one. + + + + + Convert an ICollection to an array, removing null values. Fast path for case where there are no null values. + + + + + Convert the array to a Dictionary using the keySelector to extract keys from values and the specified comparer. Optimized for array input. + + + + + Convert the list to a Dictionary using the keySelector to extract keys from values and the specified comparer. Optimized for IList of T input with fast path for array. + + + + + Convert the enumerable to a Dictionary using the keySelector to extract keys from values and the specified comparer. Fast paths for array and IList of T. + + + + + Convert the list to a Dictionary using the keySelector to extract keys from values and the specified comparer. Optimized for IList of T input. No checking for other types. + + + + + A class that inherits from Collection of T but also exposes its underlying data as List of T for performance. + + + + + Provides various internal utility functions + + + + + Quality factor to indicate a perfect match. + + + + + Quality factor to indicate no match. + + + + + The default max depth for our formatter is 256 + + + + + The default min depth for our formatter is 1 + + + + + HTTP X-Requested-With header field name + + + + + HTTP X-Requested-With header field value + + + + + HTTP Host header field name + + + + + HTTP Version token + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + A representing . + + + + + Determines whether is a type. + + The type to test. + + true if is a type; otherwise, false. + + + + + Creates an empty instance. The only way is to get it from a dummy + instance. + + The created instance. + + + + Create a default reader quotas with a default depth quota of 1K + + + + + + Remove bounding quotes on a token if present + + Token to unquote. + Unquoted token. + + + + Parses valid integer strings with no leading signs, whitespace or other + + The value to parse + The result + True if value was valid; false otherwise. + + + + Abstract class to support Bson and Json. + + + + + Base class to handle serializing and deserializing strongly-typed objects using . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + Returns a to deserialize an object of the given from the given + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to deserialize. + The to read. + The if available. It may be null. + The to log events to. + A whose result will be an object of the given type. + Derived types need to support reading. + + + + + Returns a to deserialize an object of the given from the given + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to deserialize. + The to read. + The if available. It may be null. + The to log events to. + The token to monitor for cancellation requests. + A whose result will be an object of the given type. + Derived types need to support reading. + + + + + Returns a that serializes the given of the given + to the given . + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to write. + The object value to write. It may be null. + The to which to write. + The if available. It may be null. + The if available. It may be null. + A that will perform the write. + Derived types need to support writing. + + + + + Returns a that serializes the given of the given + to the given . + + + This implementation throws a . Derived types should override this method if the formatter + supports reading. + An implementation of this method should NOT close upon completion. The stream will be closed independently when + the instance is disposed. + + + The type of the object to write. + The object value to write. It may be null. + The to which to write. + The if available. It may be null. + The if available. It may be null. + The token to monitor for cancellation requests. + A that will perform the write. + Derived types need to support writing. + + + + + This method converts (and interfaces that mandate it) to a for serialization purposes. + + The type to potentially be wrapped. If the type is wrapped, it's changed in place. + Returns true if the type was wrapped; false, otherwise + + + + This method converts (and interfaces that mandate it) to a for serialization purposes. + + The type to potentially be wrapped. If the type is wrapped, it's changed in place. + Returns true if the type was wrapped; false, otherwise + + + + Determines the best amongst the supported encodings + for reading or writing an HTTP entity body based on the provided . + + The content headers provided as part of the request or response. + The to use when reading the request or writing the response. + + + + Sets the default headers for content that will be formatted using this formatter. This method + is called from the constructor. + This implementation sets the Content-Type header to the value of if it is + not null. If it is null it sets the Content-Type to the default media type of this formatter. + If the Content-Type does not specify a charset it will set it using this formatters configured + . + + + Subclasses can override this method to set content headers such as Content-Type etc. Subclasses should + call the base implementation. Subclasses should treat the passed in (if not null) + as the authoritative media type and use that as the Content-Type. + + The type of the object being serialized. See . + The content headers that should be configured. + The authoritative media type. Can be null. + + + + Returns a specialized instance of the that can handle formatting a response for the given + parameters. This method is called after a formatter has been selected through content negotiation. + + + The default implementation returns this instance. Derived classes can choose to return a new instance if + they need to close over any of the parameters. + + The type being serialized. + The request. + The media type chosen for the serialization. Can be null. + An instance that can format a response to the given . + + + + Determines whether this can deserialize + an object of the specified type. + + + Derived classes must implement this method and indicate if a type can or cannot be deserialized. + + The type of object that will be deserialized. + true if this can deserialize an object of that type; otherwise false. + + + + Determines whether this can serialize + an object of the specified type. + + + Derived classes must implement this method and indicate if a type can or cannot be serialized. + + The type of object that will be serialized. + true if this can serialize an object of that type; otherwise false. + + + + Gets the default value for the specified type. + + + + + Gets or sets the maximum number of keys stored in a NameValueCollection. + + + + + Gets the mutable collection of elements supported by + this instance. + + + + + Gets the mutable collection of character encodings supported by + this instance. The encodings are + used when reading or writing data. + + + + + Collection class that validates it contains only instances + that are not null and not media ranges. + + + + + Inserts the into the collection at the specified . + + The zero-based index at which item should be inserted. + The object to insert. It cannot be null. + + + + Replaces the element at the specified . + + The zero-based index of the item that should be replaced. + The new value for the element at the specified index. It cannot be null. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + Creates a instance with the default settings used by the . + + + + + Determines whether this can read objects + of the specified . + + The of object that will be read. + true if objects of this can be read, otherwise false. + + + + Determines whether this can write objects + of the specified . + + The of object that will be written. + true if objects of this can be written, otherwise false. + + + + Called during deserialization to read an object of the specified + from the specified . + + The of object to read. + The from which to read. + The for the content being written. + The to log events to. + A whose result will be the object instance that has been read. + + + + Called during deserialization to read an object of the specified + from the specified . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to read. + The from which to read. + The to use when reading. + The to log events to. + The instance that has been read. + + + + Called during deserialization to get the . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to read. + The from which to read. + The to use when reading. + The used during deserialization. + + + + Called during serialization and deserialization to get the . + + + Public for delegating wrappers of this class. Expected to be called only from + and . + + The used during serialization and deserialization. + + + + + + + Called during serialization to write an object of the specified + to the specified . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to write. + The object to write. + The to which to write. + The to use when writing. + + + + Called during serialization to get the . + + + Public for delegating wrappers of this class. Expected to be called only from + . + + The of object to write. + The to which to write. + The to use when writing. + The used during serialization. + + + + Gets or sets the used to configure the . + + + + + class to handle Bson. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + + + + + + + + + + + + + Gets the default media type for Json, namely "application/bson". + + + The default media type does not have any charset parameter as + the can be configured on a per + instance basis. + + + Because is mutable, the value + returned will be a new instance every time. + + + + + Helper class to serialize types by delegating them through a concrete implementation."/>. + + The interface implementing to proxy. + + + + Initialize a DelegatingEnumerable. This constructor is necessary for to work. + + + + + Initialize a DelegatingEnumerable with an . This is a helper class to proxy interfaces for . + + The instance to get the enumerator from. + + + + Get the enumerator of the associated . + + The enumerator of the source. + + + + This method is not implemented but is required method for serialization to work. Do not use. + + The item to add. Unused. + + + + Get the enumerator of the associated . + + The enumerator of the source. + + + + Represent the form data. + - This has 100% fidelity (including ordering, which is important for deserializing ordered array). + - using interfaces allows us to optimize the implementation. E.g., we can avoid eagerly string-splitting a 10gb file. + - This also provides a convenient place to put extension methods. + + + + + Initialize a form collection around incoming data. + The key value enumeration should be immutable. + + incoming set of key value pairs. Ordering is preserved. + + + + Initialize a form collection from a query string. + Uri and FormURl body have the same schema. + + + + + Initialize a form collection from a URL encoded query string. Any leading question + mark (?) will be considered part of the query string and treated as any other value. + + + + + Get the collection as a NameValueCollection. + Beware this loses some ordering. Values are ordered within a key, + but keys are no longer ordered against each other. + + + + + Get values associated with a given key. If there are multiple values, they're concatenated. + + + + + Get a value associated with a given key. + + + + + Gets values associated with a given key. If there are multiple values, they're concatenated. + + The name of the entry that contains the values to get. The name can be null. + Values associated with a given key. If there are multiple values, they're concatenated. + + + + This class provides a low-level API for parsing HTML form URL-encoded data, also known as application/x-www-form-urlencoded + data. The output of the parser is a instance. + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The corresponding to the given query string values. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The maximum depth of object graph encoded as x-www-form-urlencoded. + The corresponding to the given query string values. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The parsed result or null if parsing failed. + true if was parsed successfully; otherwise false. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The maximum depth of object graph encoded as x-www-form-urlencoded. + The parsed result or null if parsing failed. + true if was parsed successfully; otherwise false. + + + + Parses a collection of query string values as a . + + This is a low-level API intended for use by other APIs. It has been optimized for performance and + is not intended to be called directly from user code. + The collection of query string name-value pairs parsed in lexical order. Both names + and values must be un-escaped so that they don't contain any encoding. + The maximum depth of object graph encoded as x-www-form-urlencoded. + Indicates whether to throw an exception on error or return false + The corresponding to the given query string values. + + + + Class that wraps key-value pairs. + + + This use of this class avoids a FxCop warning CA908 which happens if using various generic types. + + + + + Initializes a new instance of the class. + + The key of this instance. + The value of this instance. + + + + Gets or sets the key of this instance. + + + The key of this instance. + + + + + Gets or sets the value of this instance. + + + The value of this instance. + + + + + Interface to log events that occur during formatter reads. + + + + + Logs an error. + + The path to the member for which the error is being logged. + The error message to be logged. + + + + Logs an error. + + The path to the member for which the error is being logged. + The exception to be logged. + + + + class to handle Json. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + + + + + + + Gets the default media type for Json, namely "application/json". + + + The default media type does not have any charset parameter as + the can be configured on a per + instance basis. + + + Because is mutable, the value + returned will be a new instance every time. + + + + + Gets or sets a value indicating whether to indent elements when writing data. + + + + + Constants related to media types. + + + + + Gets a instance representing application/octet-stream. + + + A new instance representing application/octet-stream. + + + + + Gets a instance representing application/xml. + + + A new instance representing application/xml. + + + + + Gets a instance representing application/json. + + + A new instance representing application/json. + + + + + Gets a instance representing text/xml. + + + A new instance representing text/xml. + + + + + Gets a instance representing text/json. + + + A new instance representing text/json. + + + + + Gets a instance representing application/x-www-form-urlencoded. + + + A new instance representing application/x-www-form-urlencoded. + + + + + Gets a instance representing application/bson. + + + A new instance representing application/bson. + + + Not yet a standard. In particular this media type is not currently listed at + http://www.iana.org/assignments/media-types/application. + + + + + Collection class that contains instances. + + + + + Initializes a new instance of the class. + + + This collection will be initialized to contain default + instances for Xml, JsonValue and Json. + + + + + Initializes a new instance of the class. + + A collection of instances to place in the collection. + + + + Helper to search a collection for a formatter that can read the .NET type in the given mediaType. + + .NET type to read + media type to match on. + Formatter that can read the type. Null if no formatter found. + + + + Helper to search a collection for a formatter that can write the .NET type in the given mediaType. + + .NET type to read + media type to match on. + Formatter that can write the type. Null if no formatter found. + + + + Returns true if the type is one of those loosely defined types that should be excluded from validation + + .NET to validate + true if the type should be excluded. + + + + Creates a collection of new instances of the default s. + + The collection of default instances. + + + + Gets the to use for Xml. + + + + + Gets the to use for Json. + + + + + Extension methods for . + + + + + Determines whether two instances match. The instance + is said to match if and only if + is a strict subset of the values and parameters of . + That is, if the media type and media type parameters of are all present + and match those of then it is a match even though may have additional + parameters. + + The first media type. + The second media type. + true if this is a subset of ; false otherwise. + + + + Determines whether two instances match. The instance + is said to match if and only if + is a strict subset of the values and parameters of . + That is, if the media type and media type parameters of are all present + and match those of then it is a match even though may have additional + parameters. + + The first media type. + The second media type. + Indicates whether is a regular media type, a subtype media range, or a full media range + true if this is a subset of ; false otherwise. + + + + Not a media type range + + + + + A subtype media range, e.g. "application/*". + + + + + An all media range, e.g. "*/*". + + + + + Buffer-oriented parsing of HTML form URL-ended, also known as application/x-www-form-urlencoded, data. + + + + + Initializes a new instance of the class. + + The collection to which name value pairs are added as they are parsed. + Maximum length of all the individual name value pairs. + + + + Parse a buffer of URL form-encoded name-value pairs and add them to the collection. + Bytes are parsed in a consuming manner from the beginning of the buffer meaning that the same bytes can not be + present in the buffer. + + Buffer from where data is read + Size of buffer + Offset into buffer + Indicates whether the end of the URL form-encoded data has been reached. + State of the parser. Call this method with new data until it reaches a final state. + + + + Maintains information about the current header field being parsed. + + + + + Copies current name value pair field to the provided collection instance. + + The collection to copy into. + + + + Copies current name-only to the provided collection instance. + + The collection to copy into. + + + + Clears this instance. + + + + + Gets the name of the name value pair. + + + + + Gets the value of the name value pair + + + + + The combines for parsing the HTTP Request Line + and for parsing each header field. + + + + + Initializes a new instance of the class. + + The parsed HTTP request without any header sorting. + + + + Initializes a new instance of the class. + + The parsed HTTP request without any header sorting. + The max length of the HTTP request line. + The max length of the HTTP header. + + + + Parse an HTTP request header and fill in the instance. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + State of the parser. + + + + HTTP Request Line parser for parsing the first line (the request line) in an HTTP request. + + + + + Initializes a new instance of the class. + + instance where the request line properties will be set as they are parsed. + Maximum length of HTTP header. + + + + Parse an HTTP request line. + Bytes are parsed in a consuming manner from the beginning of the request buffer meaning that the same bytes can not be + present in the request buffer. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + State of the parser. + + + + The combines for parsing the HTTP Status Line + and for parsing each header field. + + + + + Initializes a new instance of the class. + + The parsed HTTP response without any header sorting. + + + + Initializes a new instance of the class. + + The parsed HTTP response without any header sorting. + The max length of the HTTP status line. + The max length of the HTTP header. + + + + Parse an HTTP response header and fill in the instance. + + Response buffer from where response is read + Size of response buffer + Offset into response buffer + State of the parser. + + + + HTTP Status line parser for parsing the first line (the status line) in an HTTP response. + + + + + Initializes a new instance of the class. + + instance where the response line properties will be set as they are parsed. + Maximum length of HTTP header. + + + + Parse an HTTP status line. + Bytes are parsed in a consuming manner from the beginning of the response buffer meaning that the same bytes can not be + present in the response buffer. + + Response buffer from where response is read + Size of response buffer + Offset into response buffer + State of the parser. + + + + Buffer-oriented RFC 5322 style Internet Message Format parser which can be used to pass header + fields used in HTTP and MIME message entities. + + + + + Initializes a new instance of the class. + + Concrete instance where header fields are added as they are parsed. + Maximum length of complete header containing all the individual header fields. + + + + Parse a buffer of RFC 5322 style header fields and add them to the collection. + Bytes are parsed in a consuming manner from the beginning of the buffer meaning that the same bytes can not be + present in the buffer. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + State of the parser. Call this method with new data until it reaches a final state. + + + + Maintains information about the current header field being parsed. + + + + + Copies current header field to the provided instance. + + The headers. + + + + Determines whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Clears this instance. + + + + + Gets the header field name. + + + + + Gets the header field value. + + + + + Complete MIME multipart parser that combines for parsing the MIME message into individual body parts + and for parsing each body part into a MIME header and a MIME body. The caller of the parser is returned + the resulting MIME bodies which can then be written to some output. + + + + + Initializes a new instance of the class. + + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + + + + Initializes a new instance of the class. + + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + The max length of the entire MIME multipart message. + The max length of the MIME header within each MIME body part. + + + + Determines whether the specified content is MIME multipart content. + + The content. + + true if the specified content is MIME multipart content; otherwise, false. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Parses the data provided and generates parsed MIME body part bodies in the form of which are ready to + write to the output stream. + + The data to parse + The number of bytes available in the input data + Parsed instances. + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Buffer-oriented MIME multipart parser. + + + + + Initializes a new instance of the class. + + Message boundary + Maximum length of entire MIME multipart message. + + + + Parse a MIME multipart message. Bytes are parsed in a consuming + manner from the beginning of the request buffer meaning that the same bytes can not be + present in the request buffer. + + Request buffer from where request is read + Size of request buffer + Offset into request buffer + Any body part that was considered as a potential MIME multipart boundary but which was in fact part of the body. + The bulk of the body part. + Indicates whether the final body part has been found. + In order to get the complete body part, the caller is responsible for concatenating the contents of the + and out parameters. + State of the parser. + + + + Represents the overall state of the . + + + + + Need more data + + + + + Parsing of a complete body part succeeded. + + + + + Bad data format + + + + + Data exceeds the allowed size + + + + + Maintains information about the current body part being parsed. + + + + + Initializes a new instance of the class. + + The reference boundary. + + + + Resets the boundary offset. + + + + + Resets the boundary. + + + + + Appends byte to the current boundary. + + The data to append to the boundary. + + + + Appends array of bytes to the current boundary. + + The data to append to the boundary. + The offset into the data. + The number of bytes to append. + + + + Gets the discarded boundary. + + An containing the discarded boundary. + + + + Determines whether current boundary is valid. + + + true if curent boundary is valid; otherwise, false. + + + + + Clears the body part. + + + + + Clears all. + + + + + Gets or sets a value indicating whether this instance has potential boundary left over. + + + true if this instance has potential boundary left over; otherwise, false. + + + + + Gets the boundary delta. + + + + + Gets or sets the body part. + + + The body part. + + + + + Gets a value indicating whether this body part instance is final. + + + true if this body part instance is final; otherwise, false. + + + + + Represents the overall state of various parsers. + + + + + Need more data + + + + + Parsing completed (final) + + + + + Bad data format (final) + + + + + Data exceeds the allowed size (final) + + + + + Helper class for validating values. + + + + + Determines whether the specified is defined by the + enumeration. + + The value to verify. + + true if the specified options is defined; otherwise, false. + + + + + Validates the specified and throws an + exception if not valid. + + The value to validate. + Name of the parameter to use if throwing exception. + + + + class to handle Xml. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The instance to copy settings from. + + + + Registers the to use to read or write + the specified . + + The type of object that will be serialized or deserialized with . + The instance to use. + + + + Registers the to use to read or write + the specified type. + + The type of object that will be serialized or deserialized with . + The instance to use. + + + + Registers the to use to read or write + the specified . + + The type of objects for which will be used. + The instance to use. + + + + Registers the to use to read or write + the specified type. + + The type of object that will be serialized or deserialized with . + The instance to use. + + + + Unregisters the serializer currently associated with the given . + + + Unless another serializer is registered for the , a default one will be created. + + The type of object whose serializer should be removed. + true if a serializer was registered for the ; otherwise false. + + + + Determines whether this can read objects + of the specified . + + The type of object that will be read. + true if objects of this can be read, otherwise false. + + + + Determines whether this can write objects + of the specified . + + The type of object that will be written. + true if objects of this can be written, otherwise false. + + + + Called during deserialization to read an object of the specified + from the specified . + + The type of object to read. + The from which to read. + The for the content being read. + The to log events to. + A whose result will be the object instance that has been read. + + + + Called during deserialization to get the XML serializer to use for deserializing objects. + + The type of object to deserialize. + The for the content being read. + An instance of or to use for deserializing the object. + + + + Called during deserialization to get the XML reader to use for reading objects from the stream. + + The to read from. + The for the content being read. + The to use for reading objects. + + + + + + + Called during serialization to get the XML serializer to use for serializing objects. + + The type of object to serialize. + The object to serialize. + The for the content being written. + An instance of or to use for serializing the object. + + + + Called during serialization to get the XML writer to use for writing objects to the stream. + + The to write to. + The for the content being written. + The to use for writing objects. + + + + Called during deserialization to get the XML serializer. + + The type of object that will be serialized or deserialized. + The used to serialize the object. + + + + Called during deserialization to get the DataContractSerializer serializer. + + The type of object that will be serialized or deserialized. + The used to serialize the object. + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + This method is to support infrastructure and is not intended to be used directly from your code. + + + + + Gets the default media type for xml, namely "application/xml". + + + + The default media type does not have any charset parameter as + the can be configured on a per + instance basis. + + Because is mutable, the value + returned will be a new instance every time. + + + + + Gets or sets a value indicating whether to use instead of by default. + + + true if use by default; otherwise, false. The default is false. + + + + + Gets or sets a value indicating whether to indent elements when writing data. + + + + + Gets the to be used while writing. + + + + + NameValueCollection to represent form data and to generate form data output. + + + + + Creates a new instance + + + + + Adds a name-value pair to the collection. + + The name to be added as a case insensitive string. + The value to be added. + + + + Converts the content of this instance to its equivalent string representation. + + The string representation of the value of this instance, multiple values with a single key are comma separated. + + + + Gets the values associated with the specified name + combined into one comma-separated list. + + The name of the entry that contains the values to get. The name can be null. + + A that contains a comma-separated list of url encoded values associated + with the specified name if found; otherwise, null. The values are Url encoded. + + + + + Gets the values associated with the specified name. + + The + A that contains url encoded values associated with the name, or null if the name does not exist. + + + + + + + + + + Gets the values associated with the specified name + combined into one comma-separated list. + + The name of the entry that contains the values to get. The name can be null. + A that contains a comma-separated list of url encoded values associated + with the specified name if found; otherwise, null. The values are Url encoded. + + + + Gets the number of names in the collection. + + + + + Extension methods to allow strongly typed objects to be read from the query component of instances. + + + + + Parses the query portion of the specified . + + The instance from which to read. + A containing the parsed result. + + + + Reads HTML form URL encoded data provided in the query component as a object. + + The instance from which to read. + An object to be initialized with this instance or null if the conversion cannot be performed. + true if the query component can be read as ; otherwise false. + + + + Reads HTML form URL encoded data provided in the query component as an of the given . + + The instance from which to read. + The type of the object to read. + An object to be initialized with this instance or null if the conversion cannot be performed. + true if the query component can be read as the specified type; otherwise false. + + + + Reads HTML form URL encoded data provided in the query component as an of type . + + The type of the object to read. + The instance from which to read. + An object to be initialized with this instance or null if the conversion cannot be performed. + true if the query component can be read as the specified type; otherwise false. + + + + Provides data for the events generated by . + + + + + Initializes a new instance of the with the parameters given. + + The percent completed of the overall exchange. + Any user state provided as part of reading or writing the data. + The current number of bytes either received or sent. + The total number of bytes expected to be received or sent. + + + + Gets the current number of bytes transferred. + + + + + Gets the total number of expected bytes to be sent or received. If the number is not known then this is null. + + + + + Wraps an inner in order to insert a on writing data. + + + + + The provides a mechanism for getting progress event notifications + when sending and receiving data in connection with exchanging HTTP requests and responses. + Register event handlers for the events and + to see events for data being sent and received. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The inner handler to which this handler submits requests. + + + + Raises the event. + + The request. + The instance containing the event data. + + + + Raises the event. + + The request. + The instance containing the event data. + + + + Occurs every time the client sending data is making progress. + + + + + Occurs every time the client receiving data is making progress. + + + + + This implementation of registers how much data has been + read (received) versus written (sent) for a particular HTTP operation. The implementation + is client side in that the total bytes to send is taken from the request and the total + bytes to read is taken from the response. In a server side scenario, it would be the + other way around (reading the request and writing the response). + + + + + Stream that delegates to inner stream. + This is taken from System.Net.Http + + + + + Extension methods that aid in making formatted requests using . + + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a POST request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as JSON. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses a default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with the given serialized + as XML. + + + This method uses the default instance of . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Sends a PUT request as an asynchronous operation to the specified Uri with + serialized using the given . + + The type of . + The client used to make the request. + The Uri the request is sent to. + The value that will be placed in the request's entity body. + The formatter used to serialize the . + The authoritative value of the request's content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + The token to monitor for cancellation requests. + A task object representing the asynchronous operation. + + + + Creates a new instance configured with the handlers provided and with an + as the innermost handler. + + An ordered list of instances to be invoked as an + travels from the to the network and an + travels from the network back to . + The handlers are invoked in a top-down fashion. That is, the first entry is invoked first for + an outbound request message but last for an inbound response message. + An instance with the configured handlers. + + + + Creates a new instance configured with the handlers provided and with the + provided as the innermost handler. + + The inner handler represents the destination of the HTTP message channel. + An ordered list of instances to be invoked as an + travels from the to the network and an + travels from the network back to . + The handlers are invoked in a top-down fashion. That is, the first entry is invoked first for + an outbound request message but last for an inbound response message. + An instance with the configured handlers. + + + + Creates an instance of an using the instances + provided by . The resulting pipeline can be used to manually create + or instances with customized message handlers. + + The inner handler represents the destination of the HTTP message channel. + An ordered list of instances to be invoked as part + of sending an and receiving an . + The handlers are invoked in a top-down fashion. That is, the first entry is invoked first for + an outbound request message but last for an inbound response message. + The HTTP message channel. + + + + Extension methods to allow strongly typed objects to be read from instances. + + + + + Returns a that will yield an object of the specified + from the instance. + + This override use the built-in collection of formatters. + The instance from which to read. + The type of the object to read. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance. + + This override use the built-in collection of formatters. + The instance from which to read. + The type of the object to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + The to log events to. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + from the instance using one of the provided + to deserialize the content. + + The instance from which to read. + The type of the object to read. + The collection of instances to use. + The to log events to. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + This override use the built-in collection of formatters. + The type of the object to read. + The instance from which to read. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + This override use the built-in collection of formatters. + The type of the object to read. + The instance from which to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + The to log events to. + A task object representing reading the content as an object of the specified type. + + + + Returns a that will yield an object of the specified + type from the instance. + + The type of the object to read. + The instance from which to read. + The collection of instances to use. + The to log events to. + The token to monitor for cancellation requests. + A task object representing reading the content as an object of the specified type. + + + + Extension methods to read and entities from instances. + + + + + Determines whether the specified content is HTTP request message content. + + The content. + + true if the specified content is HTTP message content; otherwise, false. + + + + + Determines whether the specified content is HTTP response message content. + + The content. + + true if the specified content is HTTP message content; otherwise, false. + + + + + Read the as an . + + The content to read. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + The max length of the HTTP header. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The URI scheme to use for the request URI (the + URI scheme is not actually part of the HTTP Request URI and so must be provided externally). + Size of the buffer. + The max length of the HTTP header. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + The token to monitor for cancellation requests. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + The max length of the HTTP header. + A task object representing reading the content as an . + + + + Read the as an . + + The content to read. + Size of the buffer. + The max length of the HTTP header. + The token to monitor for cancellation requests. + The parsed instance. + + + + Creates the request URI by combining scheme (provided) with parsed values of + host and path. + + The URI scheme to use for the request URI. + The unsorted HTTP request. + A fully qualified request URI. + + + + Copies the unsorted header fields to a sorted collection. + + The unsorted source headers + The destination or . + The input used to form any being part of this HTTP request. + Start location of any request entity within the . + An instance if header fields contained and . + + + + Creates an based on information provided in . + + The URI scheme to use for the request URI. + The unsorted HTTP request. + The input used to form any being part of this HTTP request. + Start location of any request entity within the . + A newly created instance. + + + + Creates an based on information provided in . + + The unsorted HTTP Response. + The input used to form any being part of this HTTP Response. + Start location of any Response entity within the . + A newly created instance. + + + + Extension methods to read MIME multipart entities from instances. + + + + + Determines whether the specified content is MIME multipart content. + + The content. + + true if the specified content is MIME multipart content; otherwise, false. + + + + + Determines whether the specified content is MIME multipart content with the + specified subtype. For example, the subtype mixed would match content + with a content type of multipart/mixed. + + The content. + The MIME multipart subtype to match. + + true if the specified content is MIME multipart content with the specified subtype; otherwise, false. + + + + + Reads all body parts within a MIME multipart message into memory using a . + + An existing instance to use for the object's content. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message into memory using a . + + An existing instance to use for the object's content. + The token to monitor for cancellation requests. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + The token to monitor for cancellation requests. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written and as read buffer size. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + Size of the buffer used to read the contents. + A representing the tasks of getting the result of reading the MIME content. + + + + Reads all body parts within a MIME multipart message using the provided instance + to determine where the contents of each body part is written and as read buffer size. + + The with which to process the data. + An existing instance to use for the object's content. + A stream provider providing output streams for where to write body parts as they are parsed. + Size of the buffer used to read the contents. + The token to monitor for cancellation requests. + A representing the tasks of getting the result of reading the MIME content. + + + + Managing state for asynchronous read and write operations + + + + + Gets the that we read from. + + + + + Gets the collection of parsed instances. + + + + + The data buffer that we use for reading data from the input stream into before processing. + + + + + Gets the MIME parser instance used to parse the data + + + + + Derived class which can encapsulate an + or an as an entity with media type "application/http". + + + + + Initializes a new instance of the class encapsulating an + . + + The instance to encapsulate. + + + + Initializes a new instance of the class encapsulating an + . + + The instance to encapsulate. + + + + Validates whether the content contains an HTTP Request or an HTTP Response. + + The content to validate. + if set to true if the content is either an HTTP Request or an HTTP Response. + Indicates whether validation failure should result in an or not. + true if content is either an HTTP Request or an HTTP Response + + + + Asynchronously serializes the object's content to the given . + + The to which to write. + The associated . + A instance that is asynchronously serializing the object's content. + + + + Computes the length of the stream if possible. + + The computed length of the stream. + true if the length has been computed; otherwise false. + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Serializes the HTTP request line. + + Where to write the request line. + The HTTP request. + + + + Serializes the HTTP status line. + + Where to write the status line. + The HTTP response. + + + + Serializes the header fields. + + Where to write the status line. + The headers to write. + + + + Gets the HTTP request message. + + + + + Gets the HTTP response message. + + + + + All of the existing non-abstract implementations, namely + , , and + enforce strict rules on what kinds of HTTP header fields can be added to each collection. + When parsing the "application/http" media type we need to just get the unsorted list. It + will get sorted later. + + + + + Represents the HTTP Request Line and header parameters parsed by + and . + + + + + Initializes a new instance of the class. + + + + + Gets or sets the HTTP method. + + + The HTTP method. + + + + + Gets or sets the HTTP request URI portion that is carried in the RequestLine (i.e the URI path + query). + + + The request URI. + + + + + Gets or sets the HTTP version. + + + The HTTP version. + + + + + Gets the unsorted HTTP request headers. + + + + + Represents the HTTP Status Line and header parameters parsed by + and . + + + + + Initializes a new instance of the class. + + + + + Gets or sets the HTTP version. + + + The HTTP version. + + + + + Gets or sets the + + + The HTTP status code + + + + + Gets or sets the HTTP reason phrase + + + The response reason phrase + + + + + Gets the unsorted HTTP request headers. + + + + + This implements a read-only, forward-only stream around another readable stream, to ensure + that there is an appropriate encoding preamble in the stream. + + + + + Maintains information about MIME body parts parsed by . + + + + + Initializes a new instance of the class. + + The stream provider. + The max length of the MIME header within each MIME body part. + The part's parent content + + + + Gets the part's content as an HttpContent. + + + The part's content, or null if the part had no content. + + + + + Writes the into the part's output stream. + + The current segment to be written to the part's output stream. + The token to monitor for cancellation requests. + + + + Gets the output stream. + + The output stream to write the body part to. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + In the success case, the HttpContent is to be used after this Part has been parsed and disposed of. + Only if Dispose has been called on a non-completed part, the parsed HttpContent needs to be disposed of as well. + + + + + Resets the output stream by either closing it or, in the case of a resetting + position to 0 so that it can be read by the caller. + + + + + Gets the header parser. + + + The header parser. + + + + + Gets the set of pointing to the read buffer with + contents of this body part. + + + + + Gets or sets a value indicating whether the body part has been completed. + + + true if this instance is complete; otherwise, false. + + + + + Gets or sets a value indicating whether this is the final body part. + + + true if this instance is complete; otherwise, false. + + + + + Provides a implementation that returns a instance. + This facilitates deserialization or other manipulation of the contents in memory. + + + + + An implementation examines the headers provided by the MIME multipart parser + as part of the MIME multipart extension methods (see ) and decides + what kind of stream to return for the body part to be written to. + + + + + Initializes a new instance of the class. + + + + + When a MIME multipart body part has been parsed this method is called to get a stream for where to write the body part to. + + The parent MIME multipart instance. + The header fields describing the body parts content. Looking for header fields such as + Content-Type and Content-Disposition can help provide the appropriate stream. In addition to using the information + in the provided header fields, it is also possible to add new header fields or modify existing header fields. This can + be useful to get around situations where the Content-type may say application/octet-stream but based on + analyzing the Content-Disposition header field it is found that the content in fact is application/json, for example. + A stream instance where the contents of a body part will be written to. + + + + Immediately upon reading the last MIME body part but before completing the read task, this method is + called to enable the to do any post processing on the + instances that have been read. For example, it can be used to copy the data to another location, or perform + some other kind of post processing on the data before completing the read operation. + + A representing the post processing. + + + + Immediately upon reading the last MIME body part but before completing the read task, this method is + called to enable the to do any post processing on the + instances that have been read. For example, it can be used to copy the data to another location, or perform + some other kind of post processing on the data before completing the read operation. + + The token to monitor for cancellation requests. + A representing the post processing. + + + + Gets the collection of instances where each instance represents a MIME body part. + + + + + This implementation returns a instance. + This facilitates deserialization or other manipulation of the contents in memory. + + + + + An suited for reading MIME body parts following the + multipart/related media type as defined in RFC 2387 (see http://www.ietf.org/rfc/rfc2387.txt). + + + + + Looks for the "start" parameter of the parent's content type and then finds the corresponding + child HttpContent with a matching Content-ID header field. + + The matching child or null if none found. + + + + Looks for a parameter in the . + + The matching parameter or null if none found. + + + + Gets the instance that has been marked as the root content in the + MIME multipart related message using the start parameter. If no start parameter is + present then pick the first of the children. + + + + + Contains a value as well as an associated that will be + used to serialize the value when writing this content. + + + + + Initializes a new instance of the class. + + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + + + + Initializes a new instance of the class. + + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Initializes a new instance of the class. + + The type of object this instance will contain. + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Asynchronously serializes the object's content to the given . + + The to which to write. + The associated . + A instance that is asynchronously serializing the object's content. + + + + Computes the length of the stream if possible. + + The computed length of the stream. + true if the length has been computed; otherwise false. + + + + Gets the type of object managed by this instance. + + + + + The formatter associated with this content instance. + + + + + Gets or sets the value of the current . + + + + + Generic form of . + + The type of object this class will contain. + + + + Initializes a new instance of the class. + + The value of the object this instance will contain. + The formatter to use when serializing the value. + + + + Initializes a new instance of the class. + + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Initializes a new instance of the class. + + The value of the object this instance will contain. + The formatter to use when serializing the value. + The authoritative value of the content's Content-Type header. Can be null in which case the + formatter's default content type will be used. + + + + Provides an implementation that exposes an output + which can be written to directly. The ability to push data to the output stream differs from the + where data is pulled and not pushed. + + + + + Initializes a new instance of the class. The + action is called when an output stream + has become available allowing the action to write to it directly. When the + stream is closed, it will signal to the content that is has completed and the + HTTP request or response will be completed. + + The action to call when an output stream is available. + + + + Initializes a new instance of the class. + + The action to call when an output stream is available. The stream is automatically + closed when the return task is completed. + + + + Initializes a new instance of the class with the given media type. + + + + + Initializes a new instance of the class with the given media type. + + + + + Initializes a new instance of the class with the given . + + + + + Initializes a new instance of the class with the given . + + + + + When this method is called, it calls the action provided in the constructor with the output + stream to write to. Once the action has completed its work it closes the stream which will + close this content instance and complete the HTTP request or response. + + The to which to write. + The associated . + A instance that is asynchronously serializing the object's content. + + + + Computes the length of the stream if possible. + + The computed length of the stream. + true if the length has been computed; otherwise false. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Async Callback threw an exception.. + + + + + Looks up a localized string similar to The IAsyncResult implementation '{0}' tried to complete a single operation multiple times. This could be caused by an incorrect application IAsyncResult implementation or other extensibility code, such as an IAsyncResult that returns incorrect CompletedSynchronously values or invokes the AsyncCallback multiple times.. + + + + + Looks up a localized string similar to End cannot be called twice on an AsyncResult.. + + + + + Looks up a localized string similar to An incorrect IAsyncResult was provided to an 'End' method. The IAsyncResult object passed to 'End' must be the one returned from the matching 'Begin' or passed to the callback provided to 'Begin'.. + + + + + Looks up a localized string similar to Found zero byte ranges. There must be at least one byte range provided.. + + + + + Looks up a localized string similar to The range unit '{0}' is not valid. The range must have a unit of '{1}'.. + + + + + Looks up a localized string similar to The stream over which '{0}' provides a range view must have a length greater than or equal to 1.. + + + + + Looks up a localized string similar to The 'From' value of the range must be less than or equal to {0}.. + + + + + Looks up a localized string similar to None of the requested ranges ({0}) overlap with the current extent of the selected resource.. + + + + + Looks up a localized string similar to The requested range ({0}) does not overlap with the current extent of the selected resource.. + + + + + Looks up a localized string similar to The stream over which '{0}' provides a range view must be seekable.. + + + + + Looks up a localized string similar to This is a read-only stream.. + + + + + Looks up a localized string similar to A null '{0}' is not valid.. + + + + + Looks up a localized string similar to The '{0}' of '{1}' cannot be used as a supported media type because it is a media range.. + + + + + Looks up a localized string similar to The '{0}' type cannot accept a null value for the value type '{1}'.. + + + + + Looks up a localized string similar to The specified value is not a valid cookie name.. + + + + + Looks up a localized string similar to Cookie cannot be null.. + + + + + Looks up a localized string similar to The '{0}' list is invalid because it contains one or more null items.. + + + + + Looks up a localized string similar to The '{0}' list is invalid because the property '{1}' of '{2}' is not null.. + + + + + Looks up a localized string similar to Error reading HTML form URL-encoded data stream.. + + + + + Looks up a localized string similar to Mismatched types at node '{0}'.. + + + + + Looks up a localized string similar to Error parsing HTML form URL-encoded data, byte {0}.. + + + + + Looks up a localized string similar to Invalid HTTP status code: '{0}'. The status code must be between {1} and {2}.. + + + + + Looks up a localized string similar to Invalid HTTP version: '{0}'. The version must start with the characters '{1}'.. + + + + + Looks up a localized string similar to The '{0}' of the '{1}' has already been read.. + + + + + Looks up a localized string similar to The '{0}' must be seekable in order to create an '{1}' instance containing an entity body. . + + + + + Looks up a localized string similar to Error reading HTTP message.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a content type header with a value of '{1}'.. + + + + + Looks up a localized string similar to HTTP Request URI cannot be an empty string.. + + + + + Looks up a localized string similar to Error parsing HTTP message header byte {0} of message {1}.. + + + + + Looks up a localized string similar to An invalid number of '{0}' header fields were present in the HTTP Request. It must contain exactly one '{0}' header field but found {1}.. + + + + + Looks up a localized string similar to Invalid URI scheme: '{0}'. The URI scheme must be a valid '{1}' scheme.. + + + + + Looks up a localized string similar to Invalid array at node '{0}'.. + + + + + Looks up a localized string similar to Traditional style array without '[]' is not supported with nested object at location {0}.. + + + + + Looks up a localized string similar to The '{0}' method returned null. It must return a JSON serializer instance.. + + + + + Looks up a localized string similar to The '{0}' method threw an exception when attempting to create a JSON serializer.. + + + + + Looks up a localized string similar to The maximum read depth ({0}) has been exceeded because the form url-encoded data being read has more levels of nesting than is allowed.. + + + + + Looks up a localized string similar to The number of keys in a NameValueCollection has exceeded the limit of '{0}'. You can adjust it by modifying the MaxHttpCollectionKeys property on the '{1}' class.. + + + + + Looks up a localized string similar to Error parsing BSON data; unable to read content as a {0}.. + + + + + Looks up a localized string similar to Error parsing BSON data; unexpected dictionary content: {0} entries, first key '{1}'.. + + + + + Looks up a localized string similar to The '{0}' method returned null. It must return a JSON reader instance.. + + + + + Looks up a localized string similar to The '{0}' method returned null. It must return a JSON writer instance.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support reading because it does not implement the ReadFromStreamAsync method.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support reading because it does not implement the ReadFromStream method.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support writing because it does not implement the WriteToStreamAsync method.. + + + + + Looks up a localized string similar to The media type formatter of type '{0}' does not support writing because it does not implement the WriteToStream method.. + + + + + Looks up a localized string similar to No encoding found for media type formatter '{0}'. There must be at least one supported encoding registered in order for the media type formatter to read or write content.. + + + + + Looks up a localized string similar to MIME multipart boundary cannot end with an empty space.. + + + + + Looks up a localized string similar to Did not find required '{0}' header field in MIME multipart body part.. + + + + + Looks up a localized string similar to Could not determine a valid local file name for the multipart body part.. + + + + + Looks up a localized string similar to Nested bracket is not valid for '{0}' data at position {1}.. + + + + + Looks up a localized string similar to A non-null request URI must be provided to determine if a '{0}' matches a given request or response message.. + + + + + Looks up a localized string similar to No MediaTypeFormatter is available to read an object of type '{0}' from content with media type '{1}'.. + + + + + Looks up a localized string similar to An object of type '{0}' cannot be used with a type parameter of '{1}'.. + + + + + Looks up a localized string similar to The configured formatter '{0}' cannot write an object of type '{1}'.. + + + + + Looks up a localized string similar to Query string name cannot be null.. + + + + + Looks up a localized string similar to Unexpected end of HTTP message stream. HTTP message is not complete.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a '{1}' content-type header with a '{2}' parameter.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a content-type header value. '{0}' instances must have a content-type header starting with '{1}'.. + + + + + Looks up a localized string similar to Invalid '{0}' instance provided. It does not have a content type header starting with '{1}'.. + + + + + Looks up a localized string similar to Error reading MIME multipart body part.. + + + + + Looks up a localized string similar to Error writing MIME multipart body part to output stream.. + + + + + Looks up a localized string similar to Error parsing MIME multipart body part header byte {0} of data segment {1}.. + + + + + Looks up a localized string similar to Error parsing MIME multipart message byte {0} of data segment {1}.. + + + + + Looks up a localized string similar to The stream provider of type '{0}' threw an exception.. + + + + + Looks up a localized string similar to The stream provider of type '{0}' returned null. It must return a writable '{1}' instance.. + + + + + Looks up a localized string similar to The stream provider of type '{0}' returned a read-only stream. It must return a writable '{1}' instance.. + + + + + Looks up a localized string similar to Unexpected end of MIME multipart stream. MIME multipart message is not complete.. + + + + + Looks up a localized string similar to The '{0}' serializer cannot serialize the type '{1}'.. + + + + + Looks up a localized string similar to There is an unmatched opened bracket for the '{0}' at position {1}.. + + + + + Looks up a localized string similar to Indentation is not supported by '{0}'.. + + + + + Looks up a localized string similar to The object of type '{0}' returned by {1} must be an instance of either XmlObjectSerializer or XmlSerializer.. + + + + + Looks up a localized string similar to The object returned by {0} must not be a null value.. + + + + + Defines an exception type for signalling that a request's media type was not supported. + + + + + Initializes a new instance of the class. + + The message that describes the error. + The unsupported media type. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Relative URI values are not supported: '{0}'. The URI must be absolute.. + + + + + Looks up a localized string similar to Unsupported URI scheme: '{0}'. The URI scheme must be either '{1}' or '{2}'.. + + + + + Looks up a localized string similar to Value must be greater than or equal to {0}.. + + + + + Looks up a localized string similar to Value must be less than or equal to {0}.. + + + + + Looks up a localized string similar to The argument '{0}' is null or empty.. + + + + + Looks up a localized string similar to URI must not contain a query component or a fragment identifier.. + + + + + Looks up a localized string similar to The value of argument '{0}' ({1}) is invalid for Enum type '{2}'.. + + + + diff --git a/packages/Microsoft.AspNet.WebApi.Core.5.2.4/Content/web.config.transform b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/Content/web.config.transform new file mode 100644 index 0000000..8e3f2a6 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/Content/web.config.transform @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/packages/Microsoft.AspNet.WebApi.Core.5.2.4/Microsoft.AspNet.WebApi.Core.5.2.4.nupkg b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/Microsoft.AspNet.WebApi.Core.5.2.4.nupkg new file mode 100644 index 0000000..308877b Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/Microsoft.AspNet.WebApi.Core.5.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.WebApi.Core.5.2.4/lib/net45/System.Web.Http.dll b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/lib/net45/System.Web.Http.dll new file mode 100644 index 0000000..134742f Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/lib/net45/System.Web.Http.dll differ diff --git a/packages/Microsoft.AspNet.WebApi.Core.5.2.4/lib/net45/System.Web.Http.xml b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/lib/net45/System.Web.Http.xml new file mode 100644 index 0000000..365dd7b --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.Core.5.2.4/lib/net45/System.Web.Http.xml @@ -0,0 +1,6664 @@ + + + + System.Web.Http + + + + + Creates an that represents an exception. + The request must be associated with an instance.An whose content is a serialized representation of an instance. + The HTTP request. + The status code of the response. + The exception. + + + Creates an that represents an error message. + The request must be associated with an instance.An whose content is a serialized representation of an instance. + The HTTP request. + The status code of the response. + The error message. + + + Creates an that represents an exception with an error message. + The request must be associated with an instance.An whose content is a serialized representation of an instance. + The HTTP request. + The status code of the response. + The error message. + The exception. + + + Creates an that represents an error. + The request must be associated with an instance.An whose content is a serialized representation of an instance. + The HTTP request. + The status code of the response. + The HTTP error. + + + Creates an that represents an error in the model state. + The request must be associated with an instance.An whose content is a serialized representation of an instance. + The HTTP request. + The status code of the response. + The model state. + + + Creates an wired up to the associated . + An initialized wired up to the associated . + The HTTP request message which led to this response message. + The HTTP response status code. + The content of the HTTP response message. + The type of the HTTP response message. + + + Creates an wired up to the associated . + An initialized wired up to the associated . + The HTTP request message which led to this response message. + The HTTP response status code. + The content of the HTTP response message. + The media type formatter. + The type of the HTTP response message. + + + Creates an wired up to the associated . + An initialized wired up to the associated . + The HTTP request message which led to this response message. + The HTTP response status code. + The content of the HTTP response message. + The media type formatter. + The media type header value. + The type of the HTTP response message. + + + Creates an wired up to the associated . + An initialized wired up to the associated . + The HTTP request message which led to this response message. + The HTTP response status code. + The content of the HTTP response message. + The media type formatter. + The media type. + The type of the HTTP response message. + + + Creates an wired up to the associated . + An initialized wired up to the associated . + The HTTP request message which led to this response message. + The HTTP response status code. + The content of the HTTP response message. + The media type header value. + The type of the HTTP response message. + + + Creates an wired up to the associated . + An initialized wired up to the associated . + The HTTP request message which led to this response message. + The HTTP response status code. + The content of the HTTP response message. + The media type. + The type of the HTTP response message. + + + Creates an wired up to the associated . + An initialized wired up to the associated . + The HTTP request message which led to this response message. + The HTTP response status code. + The content of the HTTP response message. + The HTTP configuration which contains the dependency resolver used to resolve services. + The type of the HTTP response message. + + + + + + Disposes of all tracked resources associated with the which were added via the method. + The HTTP request. + + + + Gets the current X.509 certificate from the given HTTP request. + The current , or null if a certificate is not available. + The HTTP request. + + + Retrieves the for the given request. + The for the given request. + The HTTP request. + + + Retrieves the which has been assigned as the correlation ID associated with the given . The value will be created and set the first time this method is called. + The object that represents the correlation ID associated with the request. + The HTTP request. + + + Retrieves the for the given request or null if not available. + The for the given request or null if not available. + The HTTP request. + + + Gets the parsed query string as a collection of key-value pairs. + The query string as a collection of key-value pairs. + The HTTP request. + + + + + Retrieves the for the given request or null if not available. + The for the given request or null if not available. + The HTTP request. + + + Retrieves the for the given request or null if not available. + The for the given request or null if not available. + The HTTP request. + + + Gets a instance for an HTTP request. + A instance that is initialized for the specified HTTP request. + The HTTP request. + + + + + + Adds the given to a list of resources that will be disposed by a host once the is disposed. + The HTTP request controlling the lifecycle of . + The resource to dispose when is being disposed. + + + + + + + Represents the message extensions for the HTTP response from an ASP.NET operation. + + + Attempts to retrieve the value of the content for the . + The result of the retrieval of value of the content. + The response of the operation. + The value of the content. + The type of the value to retrieve. + + + Represents extensions for adding items to a . + + + + + Provides s from path extensions appearing in a . + + + Initializes a new instance of the class. + The extension corresponding to mediaType. This value should not include a dot or wildcards. + The that will be returned if uriPathExtension is matched. + + + Initializes a new instance of the class. + The extension corresponding to mediaType. This value should not include a dot or wildcards. + The media type that will be returned if uriPathExtension is matched. + + + Returns a value indicating whether this instance can provide a for the of request. + If this instance can match a file extension in request it returns 1.0 otherwise 0.0. + The to check. + + + Gets the path extension. + The path extension. + + + The path extension key. + + + Represents an attribute that specifies which HTTP methods an action method will respond to. + + + Initializes a new instance of the class by using the action method it will respond to. + The HTTP method that the action method will respond to. + + + Initializes a new instance of the class by using a list of HTTP methods that the action method will respond to. + The HTTP methods that the action method will respond to. + + + Gets or sets the list of HTTP methods that the action method will respond to. + Gets or sets the list of HTTP methods that the action method will respond to. + + + Represents an attribute that is used for the name of an action. + + + Initializes a new instance of the class. + The name of the action. + + + Gets or sets the name of the action. + The name of the action. + + + Specifies that actions and controllers are skipped by during authorization. + + + Initializes a new instance of the class. + + + Defines properties and methods for API controller. + + + + Gets the action context. + The action context. + + + Creates a . + A . + + + Creates an (400 Bad Request) with the specified error message. + An with the specified model state. + The user-visible error message. + + + Creates an with the specified model state. + An with the specified model state. + The model state to include in the error. + + + Gets the of the current . + The of the current . + + + Creates a (409 Conflict). + A . + + + Creates a <see cref="T:System.Web.Http.NegotiatedContentResult`1" /> with the specified values. + A <see cref="T:System.Web.Http.NegotiatedContentResult`1" /> with the specified values. + The HTTP status code for the response message. + The content value to negotiate and format in the entity body. + The type of content in the entity body. + + + Creates a <see cref="T:System.Web.Http.FormattedContentResult`1" /> with the specified values. + A <see cref="T:System.Web.Http.FormattedContentResult`1" /> with the specified values. + The HTTP status code for the response message. + The content value to format in the entity body. + The formatter to use to format the content. + The type of content in the entity body. + + + Creates a <see cref="T:System.Web.Http.FormattedContentResult`1" /> with the specified values. + A <see cref="T:System.Web.Http.FormattedContentResult`1" /> with the specified values. + The HTTP status code for the response message. + The content value to format in the entity body. + The formatter to use to format the content. + The value for the Content-Type header, or <see langword="null" /> to have the formatter pick a default value. + The type of content in the entity body. + + + Creates a <see cref="T:System.Web.Http.FormattedContentResult`1" /> with the specified values. + A <see cref="T:System.Web.Http.FormattedContentResult`1" /> with the specified values. + The HTTP status code for the response message. + The content value to format in the entity body. + The formatter to use to format the content. + The value for the Content-Type header. + The type of content in the entity body. + + + Gets the of the current . + The of the current . + + + Creates a (201 Created) with the specified values. + A with the specified values. + The location at which the content has been created. + The content value to negotiate and format in the entity body. + The type of content in the entity body. + + + Creates a (201 Created) with the specified values. + A with the specified values. + The location at which the content has been created. + The content value to negotiate and format in the entity body. + The type of content in the entity body. + + + Creates a (201 Created) with the specified values. + A with the specified values. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + The content value to negotiate and format in the entity body. + The type of content in the entity body. + + + Creates a (201 Created) with the specified values. + A with the specified values. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + The content value to negotiate and format in the entity body. + The type of content in the entity body. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Releases the unmanaged resources that are used by the object and, optionally, releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Executes asynchronously a single HTTP operation. + The newly started task. + The controller context for a single HTTP operation. + The cancellation token assigned for the HTTP operation. + + + Initializes the instance with the specified controllerContext. + The object that is used for the initialization. + + + Creates an (500 Internal Server Error). + A . + + + Creates an (500 Internal Server Error) with the specified exception. + An with the specified exception. + The exception to include in the error. + + + Creates a (200 OK) with the specified value. + A with the specified value. + The content value to serialize in the entity body. + The type of content in the entity body. + + + Creates a (200 OK) with the specified values. + A with the specified values. + The content value to serialize in the entity body. + The serializer settings. + The type of content in the entity body. + + + Creates a (200 OK) with the specified values. + A with the specified values. + The content value to serialize in the entity body. + The serializer settings. + The content encoding. + The type of content in the entity body. + + + Gets the model state after the model binding process. + The model state after the model binding process. + + + Creates a . + A . + + + Creates an (200 OK). + An . + + + Creates an with the specified values. + An with the specified values. + The content value to negotiate and format in the entity body. + The type of content in the entity body. + + + Creates a redirect result (302 Found) with the specified value. + A redirect result (302 Found) with the specified value. + The location to redirect to. + + + Creates a redirect result (302 Found) with the specified value. + A redirect result (302 Found) with the specified value. + The location to redirect to. + + + Creates a redirect to route result (302 Found) with the specified values. + A redirect to route result (302 Found) with the specified values. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + + + Creates a redirect to route result (302 Found) with the specified values. + A redirect to route result (302 Found) with the specified values. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + + + Gets or sets the HttpRequestMessage of the current . + The HttpRequestMessage of the current . + + + Gets the request context. + The request context. + + + Creates a with the specified response. + A for the specified response. + The HTTP response message. + + + Creates a with the specified status code. + A with the specified status code. + The HTTP status code for the response message + + + Creates an (401 Unauthorized) with the specified values. + An with the specified values. + The WWW-Authenticate challenges. + + + Creates an (401 Unauthorized) with the specified values. + An with the specified values. + The WWW-Authenticate challenges. + + + Gets an instance of a , which is used to generate URLs to other APIs. + A , which is used to generate URLs to other APIs. + + + Returns the current principal associated with this request. + The current principal associated with this request. + + + Validates the given entity and adds the validation errors to the model state under the empty prefix, if any. + The entity being validated. + The type of the entity to be validated. + + + Validates the given entity and adds the validation errors to the model state, if any. + The entity being validated. + The key prefix under which the model state errors would be added in the model state. + The type of the entity to be validated. + + + Specifies the authorization filter that verifies the request's . + + + Initializes a new instance of the class. + + + Processes requests that fail authorization. + The context. + + + Indicates whether the specified control is authorized. + true if the control is authorized; otherwise, false. + The context. + + + Calls when an action is being authorized. + The context. + The context parameter is null. + + + Gets or sets the authorized roles. + The roles string. + + + Gets a unique identifier for this attribute. + A unique identifier for this attribute. + + + Gets or sets the authorized users. + The users string. + + + An attribute that specifies that an action parameter comes only from the entity body of the incoming . + + + Initializes a new instance of the class. + + + Gets a parameter binding. + The parameter binding. + The parameter description. + + + An attribute that specifies that an action parameter comes from the URI of the incoming . + + + Initializes a new instance of the class. + + + Gets the value provider factories for the model binder. + A collection of objects. + The configuration. + + + Represents attributes that specifies that HTTP binding should exclude a property. + + + Initializes a new instance of the class. + + + Represents the required attribute for http binding. + + + Initializes a new instance of the class. + + + Represents a configuration of instances. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with an HTTP route collection. + The HTTP route collection to associate with this instance. + + + Gets or sets the dependency resolver associated with thisinstance. + The dependency resolver. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Releases the unmanaged resources that are used by the object and, optionally, releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Invoke the Intializer hook. It is considered immutable from this point forward. It's safe to call this multiple times. + + + Gets the list of filters that apply to all requests served using this instance. + The list of filters. + + + Gets the media-type formatters for this instance. + A collection of objects. + + + Gets or sets a value indicating whether error details should be included in error messages. + The value that indicates that error detail policy. + + + Gets or sets the action that will perform final initialization of the instance before it is used to process requests. + The action that will perform final initialization of the instance. + + + Gets an ordered list of instances to be invoked as an travels up the stack and an travels down in stack in return. + The message handler collection. + + + Gets the collection of rules for how parameters should be bound. + A collection of functions that can produce a parameter binding for a given parameter. + + + Gets the properties associated with this instance. + The that contains the properties. + + + Gets the associated with this instance. + The . + + + Gets the container of default services associated with this instance. + The that contains the default services for this instance. + + + Gets the root virtual path. + The root virtual path. + + + Contains extension methods for the class. + + + + + Maps the attribute-defined routes for the application. + The server configuration. + The to use for discovering and building routes. + + + Maps the attribute-defined routes for the application. + The server configuration. + The constraint resolver. + + + Maps the attribute-defined routes for the application. + The server configuration. + The to use for resolving inline constraints. + The to use for discovering and building routes. + + + + Specifies that an action supports the DELETE HTTP method. + + + Initializes a new instance of the class. + + + Gets the http methods that correspond to this attribute. + The http methods that correspond to this attribute. + + + Defines a serializable container for storing error information. This information is stored as key/value pairs. The dictionary keys to look up standard error information are available on the type. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class for . + The exception to use for error information. + true to include the exception information in the error; false otherwise + + + Initializes a new instance of the class containing error message . + The error message to associate with this instance. + + + Initializes a new instance of the class for . + The invalid model state to use for error information. + true to include exception messages in the error; false otherwise + + + Gets or sets the message of the if available. + The message of the if available. + + + Gets or sets the type of the if available. + The type of the if available. + + + Gets a particular property value from this error instance. + A particular property value from this error instance. + The name of the error property. + The type of the property. + + + Gets the inner associated with this instance if available. + The inner associated with this instance if available. + + + Gets or sets the high-level, user-visible message explaining the cause of the error. Information carried in this field should be considered public in that it will go over the wire regardless of the . As a result care should be taken not to disclose sensitive information about the server or the application. + The high-level, user-visible message explaining the cause of the error. Information carried in this field should be considered public in that it will go over the wire regardless of the . As a result care should be taken not to disclose sensitive information about the server or the application. + + + Gets or sets a detailed description of the error intended for the developer to understand exactly what failed. + A detailed description of the error intended for the developer to understand exactly what failed. + + + Gets the containing information about the errors that occurred during model binding. + The containing information about the errors that occurred during model binding. + + + Gets or sets the stack trace information associated with this instance if available. + The stack trace information associated with this instance if available. + + + This method is reserved and should not be used. + Always returns null. + + + Generates an instance from its XML representation. + The XmlReader stream from which the object is deserialized. + + + Converts an instance into its XML representation. + The XmlWriter stream to which the object is serialized. + + + Provides keys to look up error information stored in the dictionary. + + + Provides a key for the ErrorCode. + + + Provides a key for the ExceptionMessage. + + + Provides a key for the ExceptionType. + + + Provides a key for the InnerException. + + + Provides a key for the MessageDetail. + + + Provides a key for the Message. + + + Provides a key for the MessageLanguage. + + + Provides a key for the ModelState. + + + Provides a key for the StackTrace. + + + Specifies that an action supports the GET HTTP method. + + + Initializes a new instance of the class. + + + Gets the http methods that correspond to this attribute. + The http methods that correspond to this attribute. + + + Specifies that an action supports the HEAD HTTP method. + + + Initializes a new instance of the class. + + + Gets the http methods that correspond to this attribute. + The http methods that correspond to this attribute. + + + Represents an attribute that is used to restrict an HTTP method so that the method handles only HTTP OPTIONS requests. + + + Initializes a new instance of the class. + + + Gets the http methods that correspond to this attribute. + The http methods that correspond to this attribute. + + + Specifies that an action supports the PATCH HTTP method. + + + Initializes a new instance of the class. + + + Gets the http methods that correspond to this attribute. + The http methods that correspond to this attribute. + + + Specifies that an action supports the POST HTTP method. + + + Initializes a new instance of the class. + + + Gets the http methods that correspond to this attribute. + The http methods that correspond to this attribute. + + + Represents an attribute that is used to restrict an HTTP method so that the method handles only HTTP PUT requests. + + + Initializes a new instance of the class. + + + Gets the http methods that correspond to this attribute. + The http methods that correspond to this attribute. + + + An exception that allows for a given to be returned to the client. + + + Initializes a new instance of the class. + The HTTP response to return to the client. + + + Initializes a new instance of the class. + The status code of the response. + + + Gets the HTTP response to return to the client. + The that represents the HTTP response. + + + A collection of instances. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The virtual path root. + + + Adds an instance to the collection. + The name of the route. + The instance to add to the collection. + + + Removes all items from the collection. + + + Determines whether the collection contains a specific . + true if the is found in the collection; otherwise, false. + The object to locate in the collection. + + + Determines whether the collection contains an element with the specified key. + true if the collection contains an element with the key; otherwise, false. + The key to locate in the collection. + + + Copies the instances of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from the collection. + The zero-based index in at which copying begins. + + + Copies the route names and instances of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from the collection. + The zero-based index in at which copying begins. + + + Gets the number of items in the collection. + The number of items in the collection. + + + Creates an instance. + The new instance. + The route template. + An object that contains the default route parameters. + An object that contains the route constraints. + The route data tokens. + + + Creates an instance. + The new instance. + The route template. + An object that contains the default route parameters. + An object that contains the route constraints. + The route data tokens. + The message handler for the route. + + + Creates an instance. + The new instance. + The route template. + An object that contains the default route parameters. + An object that contains the route constraints. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Releases the unmanaged resources that are used by the object and, optionally, releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Returns an enumerator that iterates through the collection. + An that can be used to iterate through the collection. + + + Gets the route data for a specified HTTP request. + An instance that represents the route data. + The HTTP request. + + + Gets a virtual path. + An instance that represents the virtual path. + The HTTP request. + The route name. + The route values. + + + Inserts an instance into the collection. + The zero-based index at which should be inserted. + The route name. + The to insert. The value cannot be null. + + + Gets a value indicating whether the collection is read-only. + true if the collection is read-only; otherwise, false. + + + Gets or sets the element at the specified index. + The at the specified index. + The index. + + + Gets or sets the element with the specified route name. + The at the specified index. + The route name. + + + Called internally to get the enumerator for the collection. + An that can be used to iterate through the collection. + + + Removes an instance from the collection. + true if the element is successfully removed; otherwise, false. This method also returns false if was not found in the collection. + The name of the route to remove. + + + Adds an item to the collection. + The object to add to the collection. + + + Removes the first occurrence of a specific object from the collection. + true if was successfully removed from the collection; otherwise, false. This method also returns false if is not found in the original collection. + The object to remove from the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + Gets the with the specified route name. + true if the collection contains an element with the specified name; otherwise, false. + The route name. + When this method returns, contains the instance, if the route name is found; otherwise, null. This parameter is passed uninitialized. + + + Validates that a constraint is valid for an created by a call to the method. + The route template. + The constraint name. + The constraint object. + + + Gets the virtual path root. + The virtual path root. + + + Extension methods for + + + Ignores the specified route. + Returns . + A collection of routes for the application. + The name of the route to ignore. + The route template for the route. + + + Ignores the specified route. + Returns . + A collection of routes for the application. + The name of the route to ignore. + The route template for the route. + A set of expressions that specify values for the route template. + + + Maps the specified route for handling HTTP batch requests. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + The for handling batch requests. + + + Maps the specified route template. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + + + Maps the specified route template and sets default route values. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + An object that contains default route values. + + + Maps the specified route template and sets default route values and constraints. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + An object that contains default route values. + A set of expressions that specify values for . + + + Maps the specified route template and sets default route values, constraints, and end-point message handler. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + An object that contains default route values. + A set of expressions that specify values for . + The handler to which the request will be dispatched. + + + Defines an implementation of an which dispatches an incoming and creates an as a result. + + + Initializes a new instance of the class, using the default configuration and dispatcher. + + + Initializes a new instance of the class with a specified dispatcher. + The HTTP dispatcher that will handle incoming requests. + + + Initializes a new instance of the class with a specified configuration. + The used to configure this instance. + + + Initializes a new instance of the class with a specified configuration and dispatcher. + The used to configure this instance. + The HTTP dispatcher that will handle incoming requests. + + + Gets the used to configure this instance. + The used to configure this instance. + + + Gets the HTTP dispatcher that handles incoming requests. + The HTTP dispatcher that handles incoming requests. + + + Releases the unmanaged resources that are used by the object and, optionally, releases the managed resources. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Prepares the server for operation. + + + Dispatches an incoming . + A task representing the asynchronous operation. + The request to dispatch. + The token to monitor for cancellation requests. + + + Defines a command that asynchronously creates an . + + + Creates an asynchronously. + A task that, when completed, contains the . + The token to monitor for cancellation requests. + + + Specifies whether error details, such as exception messages and stack traces, should be included in error messages. + + + Always include error details. + + + Use the default behavior for the host environment. For ASP.NET hosting, use the value from the customErrors element in the Web.config file. For self-hosting, use the value . + + + Only include error details when responding to a local request. + + + Never include error details. + + + Represents an attribute that is used to indicate that a controller method is not an action method. + + + Initializes a new instance of the class. + + + Represents a filter attribute that overrides action filters defined at a higher level. + + + Initializes a new instance of the class. + + + Gets a value indicating whether the action filter allows multiple attribute. + true if the action filter allows multiple attribute; otherwise, false. + + + Gets the type of filters to override. + The type of filters to override. + + + Represents a filter attribute that overrides authentication filters defined at a higher level. + + + + + + Represents a filter attribute that overrides authorization filters defined at a higher level. + + + Initializes a new instance of the class. + + + Gets or sets a Boolean value indicating whether more than one instance of the indicated attribute can be specified for a single program element. + true if more than one instance is allowed to be specified; otherwise, false. + + + Gets the type to filters override attributes. + The type to filters override attributes. + + + Represents a filter attribute that overrides exception filters defined at a higher level. + + + + + + Attribute on a parameter or type that produces a . If the attribute is on a type-declaration, then it's as if that attribute is present on all action parameters of that type. + + + Initializes a new instance of the class. + + + Gets the parameter binding. + The parameter binding. + The parameter description. + + + Place on an action to expose it directly via a route. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The route template describing the URI pattern to match against. + + + Returns . + + + Returns . + + + + Returns . + + + The class can be used to indicate properties about a route parameter (the literals and placeholders located within segments of a ). It can for example be used to indicate that a route parameter is optional. + + + An optional parameter. + + + Returns a that represents this instance. + A that represents this instance. + + + Annotates a controller with a route prefix that applies to all actions within the controller. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The route prefix for the controller. + + + Gets the route prefix. + + + Provides type-safe accessors for services obtained from a object. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Returns the registered unhandled exception handler, if any. + The registered unhandled exception hander, if present; otherwise, null. + The services container. + + + Returns the collection of registered unhandled exception loggers. + The collection of registered unhandled exception loggers. + The services container. + + + Gets the collection. + Returns a collection of objects. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance, or null if no instance was registered. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the collection. + Returns a collection of objects. + The services container. + + + Gets the service. + Returns an instance. + The services container. + + + Gets the collection. + Returns a collection ofobjects. + The services container. + + + Gets the service. + Returns aninstance. + The services container. + + + Gets the service. + Returns aninstance. + The services container. + + + Gets the collection. + Returns a collection of objects. + The services container. + + + Represents an containing zero or one entities. Use together with an [EnableQuery] from the System.Web.Http.OData or System.Web.OData namespace. + + + Initializes a new instance of the class. + The containing zero or one entities. + + + Creates a from an . A helper method to instantiate a object without having to explicitly specify the type . + The created . + The containing zero or one entities. + The type of the data in the data source. + + + The containing zero or one entities. + + + Represents an containing zero or one entities. Use together with an [EnableQuery] from the System.Web.Http.OData or System.Web.OData namespace. + The type of the data in the data source. + + + Initializes a new instance of the class. + The containing zero or one entities. + + + The containing zero or one entities. + + + Defines the order of execution for batch requests. + + + Executes the batch requests non-sequentially. + + + Executes the batch requests sequentially. + + + Provides extension methods for the class. + + + Copies the properties from another . + The sub-request. + The batch request that contains the properties to copy. + + + Represents the default implementation of that encodes the HTTP request/response messages as MIME multipart. + + + Initializes a new instance of the class. + The for handling the individual batch requests. + + + Creates the batch response message. + The batch response message. + The responses for the batch requests. + The original request containing all the batch requests. + The cancellation token. + + + Executes the batch request messages. + A collection of for the batch requests. + The collection of batch request messages. + The cancellation token. + + + Gets or sets the execution order for the batch requests. The default execution order is sequential. + The execution order for the batch requests. The default execution order is sequential. + + + Converts the incoming batch request into a collection of request messages. + A collection of . + The request containing the batch request messages. + The cancellation token. + + + Processes the batch requests. + The result of the operation. + The batch request. + The cancellation token. + + + Gets the supported content types for the batch request. + The supported content types for the batch request. + + + Validates the incoming request that contains the batch request messages. + The request containing the batch request messages. + + + Defines the abstraction for handling HTTP batch requests. + + + Initializes a new instance of the class. + The for handling the individual batch requests. + + + Gets the invoker to send the batch requests to the . + The invoker to send the batch requests to the . + + + Processes the incoming batch request as a single . + The batch response. + The batch request. + The cancellation token. + + + Sends the batch handler asynchronously. + The result of the operation. + the send request. + The cancelation token. + + + Invokes the action methods of a controller. + + + Initializes a new instance of the class. + + + Asynchronously invokes the specified action by using the specified controller context. + The invoked action. + The controller context. + The cancellation token. + + + Represents a reflection based action selector. + + + Initializes a new instance of the class. + + + Gets the action mappings for the . + The action mappings. + The information that describes a controller. + + + Selects an action for the . + The selected action. + The controller context. + + + Represents a container for services that can be specific to a controller. This shadows the services from its parent . A controller can either set a service here, or fall through to the more global set of services. + + + Initializes a new instance of the class. + The parent services container. + + + Removes a single-instance service from the default services. + The type of service. + + + Gets a service of the specified type. + The first instance of the service, or null if the service is not found. + The type of service. + + + Gets the list of service objects for a given service type, and validates the service type. + The list of service objects of the specified type. + The service type. + + + Gets the list of service objects for a given service type. + The list of service objects of the specified type, or an empty list if the service is not found. + The type of service. + + + Queries whether a service type is single-instance. + true if the service type has at most one instance, or false if the service type supports multiple instances. + The service type. + + + Replaces a single-instance service object. + The service type. + The service object that replaces the previous instance. + + + Describes *how* the binding will happen and does not actually bind. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The back pointer to the action this binding is for. + The synchronous bindings for each parameter. + + + Gets or sets the back pointer to the action this binding is for. + The back pointer to the action this binding is for. + + + Executes asynchronously the binding for the given request context. + Task that is signaled when the binding is complete. + The action context for the binding. This contains the parameter dictionary that will get populated. + The cancellation token for cancelling the binding operation. Or a binder can also bind a parameter to this. + + + Gets or sets the synchronous bindings for each parameter. + The synchronous bindings for each parameter. + + + Contains information for the executing action. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The controller context. + The action descriptor. + + + Gets a list of action arguments. + A list of action arguments. + + + Gets or sets the action descriptor for the action context. + The action descriptor. + + + Gets or sets the controller context. + The controller context. + + + Gets the model state dictionary for the context. + The model state dictionary. + + + Gets the request message for the action context. + The request message for the action context. + + + Gets the current request context. + The current request context. + + + Gets or sets the response message for the action context. + The response message for the action context. + + + Contains extension methods for . + + + + + + + + + + + Provides information about the action methods. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with specified information that describes the controller of the action.. + The information that describes the controller of the action. + + + Gets or sets the binding that describes the action. + The binding that describes the action. + + + Gets the name of the action. + The name of the action. + + + Gets or sets the action configuration. + The action configuration. + + + Gets the information that describes the controller of the action. + The information that describes the controller of the action. + + + Executes the described action and returns a that once completed will contain the return value of the action. + A that once completed will contain the return value of the action. + The controller context. + A list of arguments. + The cancellation token. + + + Returns the custom attributes associated with the action descriptor. + The custom attributes associated with the action descriptor. + The action descriptor. + + + Gets the custom attributes for the action. + The collection of custom attributes applied to this action. + true to search this action's inheritance chain to find the attributes; otherwise, false. + The type of attribute to search for. + + + Retrieves the filters for the given configuration and action. + The filters for the given configuration and action. + + + Retrieves the filters for the action descriptor. + The filters for the action descriptor. + + + Retrieves the parameters for the action descriptor. + The parameters for the action descriptor. + + + Gets the properties associated with this instance. + The properties associated with this instance. + + + Gets the converter for correctly transforming the result of calling ExecuteAsync(HttpControllerContext, IDictionaryString, Object)" into an instance of . + The action result converter. + + + Gets the return type of the descriptor. + The return type of the descriptor. + + + Gets the collection of supported HTTP methods for the descriptor. + The collection of supported HTTP methods for the descriptor. + + + Contains information for a single HTTP operation. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The request context. + The HTTP request. + The controller descriptor. + The controller. + + + Initializes a new instance of the class. + The configuration. + The route data. + The request. + + + Gets or sets the configuration. + The configuration. + + + Gets or sets the HTTP controller. + The HTTP controller. + + + Gets or sets the controller descriptor. + The controller descriptor. + + + Gets or sets the request. + The request. + + + Gets or sets the request context. + + + Gets or sets the route data. + The route data. + + + Represents information that describes the HTTP controller. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The configuration. + The controller name. + The controller type. + + + Gets or sets the configurations associated with the controller. + The configurations associated with the controller. + + + Gets or sets the name of the controller. + The name of the controller. + + + Gets or sets the type of the controller. + The type of the controller. + + + Creates a controller instance for the given . + The created controller instance. + The request message. + + + Retrieves a collection of custom attributes of the controller. + A collection of custom attributes. + The type of the object. + + + Returns a collection of attributes that can be assigned to <typeparamref name="T" /> for this descriptor's controller. + A collection of attributes associated with this controller. + true to search this controller's inheritance chain to find the attributes; otherwise, false. + Used to filter the collection of attributes. Use a value of to retrieve all attributes. + + + Returns a collection of filters associated with the controller. + A collection of filters associated with the controller. + + + Gets the properties associated with this instance. + The properties associated with this instance. + + + Contains settings for an HTTP controller. + + + Initializes a new instance of the class. + A configuration object that is used to initialize the instance. + + + Gets the collection of instances for the controller. + The collection of instances. + + + Gets the collection of parameter bindingfunctions for for the controller. + The collection of parameter binding functions. + + + Gets the collection of service instances for the controller. + The collection of service instances. + + + Describes how a parameter is bound. The binding should be static (based purely on the descriptor) and can be shared across requests. + + + Initializes a new instance of the class. + An that describes the parameters. + + + Gets the that was used to initialize this instance. + The instance. + + + If the binding is invalid, gets an error message that describes the binding error. + An error message. If the binding was successful, the value is null. + + + Asynchronously executes the binding for the given request. + A task object representing the asynchronous operation. + Metadata provider to use for validation. + The action context for the binding. The action context contains the parameter dictionary that will get populated with the parameter. + Cancellation token for cancelling the binding operation. + + + Gets the parameter value from argument dictionary of the action context. + The value for this parameter in the given action context, or null if the parameter has not yet been set. + The action context. + + + Gets a value that indicates whether the binding was successful. + true if the binding was successful; otherwise, false. + + + Sets the result of this parameter binding in the argument dictionary of the action context. + The action context. + The parameter value. + + + Returns a value indicating whether this instance will read the entity body of the HTTP message. + true if this will read the entity body; otherwise, false. + + + Represents the HTTP parameter descriptor. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The action descriptor. + + + Gets or sets the action descriptor. + The action descriptor. + + + Gets or sets the for the . + The for the . + + + Gets the default value of the parameter. + The default value of the parameter. + + + Retrieves a collection of the custom attributes from the parameter. + A collection of the custom attributes from the parameter. + The type of the custom attributes. + + + Gets a value that indicates whether the parameter is optional. + true if the parameter is optional; otherwise, false. + + + Gets or sets the parameter binding attribute. + The parameter binding attribute. + + + Gets the name of the parameter. + The name of the parameter. + + + Gets the type of the parameter. + The type of the parameter. + + + Gets the prefix of this parameter. + The prefix of this parameter. + + + Gets the properties of this parameter. + The properties of this parameter. + + + Represents the context associated with a request. + + + Initializes a new instance of the class. + + + Gets or sets the client certificate. + Returns . + + + Gets or sets the configuration. + Returns . + + + Gets or sets a value indicating whether error details, such as exception messages and stack traces, should be included in the response for this request. + Returns . + + + Gets or sets a value indicating whether the request originates from a local address. + Returns . + + + .Gets or sets the principal + Returns . + + + Gets or sets the route data. + Returns . + + + Gets or sets the factory used to generate URLs to other APIs. + Returns . + + + Gets or sets the virtual path root. + Returns . + + + + + A contract for a conversion routine that can take the result of an action returned from <see cref="M:System.Web.Http.Controllers.HttpActionDescriptor.ExecuteAsync(System.Web.Http.Controllers.HttpControllerContext,System.Collections.Generic.IDictionary{System.String,System.Object})" /> and convert it to an instance of . + + + Converts the specified object to another object. + The converted object. + The controller context. + The action result. + + + Defines the method for retrieval of action binding associated with parameter value. + + + Gets the . + A object. + The action descriptor. + + + If a controller is decorated with an attribute with this interface, then it gets invoked to initialize the controller settings. + + + Callback invoked to set per-controller overrides for this controllerDescriptor. + The controller settings to initialize. + The controller descriptor. Note that the can be associated with the derived controller type given that is inherited. + + + Contains method that is used to invoke HTTP operation. + + + Executes asynchronously the HTTP operation. + The newly started task. + The execution context. + The cancellation token assigned for the HTTP operation. + + + Contains the logic for selecting an action method. + + + Returns a map, keyed by action string, of all that the selector can select. This is primarily called by to discover all the possible actions in the controller. + A map of that the selector can select, or null if the selector does not have a well-defined mapping of . + The controller descriptor. + + + Selects the action for the controller. + The action for the controller. + The context of the controller. + + + Represents an HTTP controller. + + + Executes the controller for synchronization. + The controller. + The current context for a test controller. + The notification that cancels the operation. + + + Defines extension methods for . + + + Binds parameter that results as an error. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The error message that describes the reason for fail bind. + + + Bind the parameter as if it had the given attribute on the declaration. + The HTTP parameter binding object. + The parameter to provide binding for. + The attribute that describes the binding. + + + Binds parameter by parsing the HTTP body content. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + + + Binds parameter by parsing the HTTP body content. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The list of formatters which provides selection of an appropriate formatter for serializing the parameter into object. + + + Binds parameter by parsing the HTTP body content. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The list of formatters which provides selection of an appropriate formatter for serializing the parameter into object. + The body model validator used to validate the parameter. + + + Binds parameter by parsing the HTTP body content. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The list of formatters which provides selection of an appropriate formatter for serializing the parameter into object. + + + Binds parameter by parsing the query string. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + + + Binds parameter by parsing the query string. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The value provider factories which provide query string parameter data. + + + Binds parameter by parsing the query string. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The model binder used to assemble the parameter into an object. + + + Binds parameter by parsing the query string. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The model binder used to assemble the parameter into an object. + The value provider factories which provide query string parameter data. + + + Binds parameter by parsing the query string. + The HTTP parameter binding object. + The parameter descriptor that describes the parameter to bind. + The value provider factories which provide query string parameter data. + + + Represents a reflected synchronous or asynchronous action method. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with the specified descriptor and method details.. + The controller descriptor. + The action-method information. + + + Gets the name of the action. + The name of the action. + + + + Executes the described action and returns a that once completed will contain the return value of the action. + A [T:System.Threading.Tasks.Task`1"] that once completed will contain the return value of the action. + The context. + The arguments. + A cancellation token to cancel the action. + + + Returns an array of custom attributes defined for this member, identified by type. + An array of custom attributes or an empty array if no custom attributes exist. + true to search this action's inheritance chain to find the attributes; otherwise, false. + The type of the custom attributes. + + + Retrieves information about action filters. + The filter information. + + + + Retrieves the parameters of the action method. + The parameters of the action method. + + + Gets or sets the action-method information. + The action-method information. + + + Gets the return type of this method. + The return type of this method. + + + Gets or sets the supported http methods. + The supported http methods. + + + Represents the reflected HTTP parameter descriptor. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The action descriptor. + The parameter information. + + + Gets the default value for the parameter. + The default value for the parameter. + + + Retrieves a collection of the custom attributes from the parameter. + A collection of the custom attributes from the parameter. + The type of the custom attributes. + + + Gets a value that indicates whether the parameter is optional. + true if the parameter is optional; otherwise false. + + + Gets or sets the parameter information. + The parameter information. + + + Gets the name of the parameter. + The name of the parameter. + + + Gets the type of the parameter. + The type of the parameter. + + + Represents a converter for actions with a return type of . + + + Initializes a new instance of the class. + + + Converts a object to another object. + The converted object. + The controller context. + The action result. + + + An abstract class that provides a container for services used by ASP.NET Web API. + + + Initializes a new instance of the class. + + + Adds a service to the end of services list for the given service type. + The service type. + The service instance. + + + Adds the services of the specified collection to the end of the services list for the given service type. + The service type. + The services to add. + + + Removes all the service instances of the given service type. + The service type to clear from the services list. + + + Removes all instances of a multi-instance service type. + The service type to remove. + + + Removes a single-instance service type. + The service type to remove. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Searches for a service that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence. + The zero-based index of the first occurrence, if found; otherwise, -1. + The service type. + The delegate that defines the conditions of the element to search for. + + + Gets a service instance of a specified type. + The service type. + + + Gets a mutable list of service instances of a specified type. + A mutable list of service instances. + The service type. + + + Gets a collection of service instanes of a specified type. + A collection of service instances. + The service type. + + + Inserts a service into the collection at the specified index. + The service type. + The zero-based index at which the service should be inserted. If is passed, ensures the element is added to the end. + The service to insert. + + + Inserts the elements of the collection into the service list at the specified index. + The service type. + The zero-based index at which the new elements should be inserted. If is passed, ensures the elements are added to the end. + The collection of services to insert. + + + Determine whether the service type should be fetched with GetService or GetServices. + true iff the service is singular. + type of service to query + + + Removes the first occurrence of the given service from the service list for the given service type. + true if the item is successfully removed; otherwise, false. + The service type. + The service instance to remove. + + + Removes all the elements that match the conditions defined by the specified predicate. + The number of elements removed from the list. + The service type. + The delegate that defines the conditions of the elements to remove. + + + Removes the service at the specified index. + The service type. + The zero-based index of the service to remove. + + + Replaces all existing services for the given service type with the given service instance. This works for both singular and plural services. + The service type. + The service instance. + + + Replaces all instances of a multi-instance service with a new instance. + The type of service. + The service instance that will replace the current services of this type. + + + Replaces all existing services for the given service type with the given service instances. + The service type. + The service instances. + + + Replaces a single-instance service of a specified type. + The service type. + The service instance. + + + Removes the cached values for a single service type. + The service type. + + + A converter for creating responses from actions that return an arbitrary value. + The declared return type of an action. + + + Initializes a new instance of the class. + + + Converts the result of an action with arbitrary return type to an instance of . + The newly created object. + The action controller context. + The execution result. + + + Represents a converter for creating a response from actions that do not return a value. + + + Initializes a new instance of the class. + + + Converts the created response from actions that do not return a value. + The converted response. + The context of the controller. + The result of the action. + + + Represents a dependency injection container. + + + Starts a resolution scope. + The dependency scope. + + + Represents an interface for the range of the dependencies. + + + Retrieves a service from the scope. + The retrieved service. + The service to be retrieved. + + + Retrieves a collection of services from the scope. + The retrieved collection of services. + The collection of services to be retrieved. + + + Describes an API defined by relative URI path and HTTP method. + + + Initializes a new instance of the class. + + + Gets or sets the action descriptor that will handle the API. + The action descriptor. + + + Gets or sets the documentation of the API. + The documentation. + + + Gets or sets the HTTP method. + The HTTP method. + + + Gets the ID. The ID is unique within . + The ID. + + + Gets the parameter descriptions. + The parameter descriptions. + + + Gets or sets the relative path. + The relative path. + + + Gets or sets the response description. + The response description. + + + Gets or sets the registered route for the API. + The route. + + + Gets the supported request body formatters. + The supported request body formatters. + + + Gets the supported response formatters. + The supported response formatters. + + + Explores the URI space of the service based on routes, controllers and actions available in the system. + + + Initializes a new instance of the class. + The configuration. + + + Gets the API descriptions. The descriptions are initialized on the first access. + + + Gets or sets the documentation provider. The provider will be responsible for documenting the API. + The documentation provider. + + + Gets a collection of HttpMethods supported by the action. Called when initializing the . + A collection of HttpMethods supported by the action. + The route. + The action descriptor. + + + Determines whether the action should be considered for generation. Called when initializing the . + true if the action should be considered for generation, false otherwise. + The action variable value from the route. + The action descriptor. + The route. + + + Determines whether the controller should be considered for generation. Called when initializing the . + true if the controller should be considered for generation, false otherwise. + The controller variable value from the route. + The controller descriptor. + The route. + + + This attribute can be used on the controllers and actions to influence the behavior of . + + + Initializes a new instance of the class. + + + Gets or sets a value indicating whether to exclude the controller or action from the instances generated by . + true if the controller or action should be ignored; otherwise, false. + + + Describes a parameter on the API defined by relative URI path and HTTP method. + + + Initializes a new instance of the class. + + + Gets or sets the documentation. + The documentation. + + + Gets or sets the name. + The name. + + + Gets or sets the parameter descriptor. + The parameter descriptor. + + + Gets or sets the source of the parameter. It may come from the request URI, request body or other places. + The source. + + + Describes where the parameter come from. + + + The parameter come from Body. + + + The parameter come from Uri. + + + The location is unknown. + + + Defines the interface for getting a collection of . + + + Gets the API descriptions. + + + Defines the provider responsible for documenting the service. + + + Gets the documentation based on . + The documentation for the controller. + The action descriptor. + + + + Gets the documentation based on . + The documentation for the controller. + The parameter descriptor. + + + + Describes the API response. + + + Initializes a new instance of the class. + + + Gets or sets the declared response type. + The declared response type. + + + Gets or sets the response documentation. + The response documentation. + + + Gets or sets the actual response type. + The actual response type. + + + Use this to specify the entity type returned by an action when the declared return type is or . The will be read by when generating . + + + Initializes a new instance of the class. + The response type. + + + Gets the response type. + + + Provides an implementation of with no external dependencies. + + + Initializes a new instance of the class. + + + Returns a list of assemblies available for the application. + A <see cref="T:System.Collections.ObjectModel.Collection`1" /> of assemblies. + + + Represents a default implementation of an . A different implementation can be registered via the . We optimize for the case where we have an instance per instance but can support cases where there are many instances for one as well. In the latter case the lookup is slightly slower because it goes through the dictionary. + + + Initializes a new instance of the class. + + + Creates the specified by using the given . + An instance of type . + The request message. + The controller descriptor. + The type of the controller. + + + Represents a default instance for choosing a given a . A different implementation can be registered via the . + + + Initializes a new instance of the class. + The configuration. + + + Specifies the suffix string in the controller name. + + + Returns a map, keyed by controller string, of all that the selector can select. + A map of all that the selector can select, or null if the selector does not have a well-defined mapping of . + + + Gets the name of the controller for the specified . + The name of the controller for the specified . + The HTTP request message. + + + Selects a for the given . + The instance for the given . + The HTTP request message. + + + Provides an implementation of with no external dependencies. + + + Initializes a new instance of the class. + + + Initializes a new instance using a predicate to filter controller types. + The predicate. + + + Returns a list of controllers available for the application. + An <see cref="T:System.Collections.Generic.ICollection`1" /> of controllers. + The assemblies resolver. + + + Gets a value whether the resolver type is a controller type predicate. + true if the resolver type is a controller type predicate; otherwise, false. + + + Dispatches an incoming to an implementation for processing. + + + Initializes a new instance of the class with the specified configuration. + The http configuration. + + + Gets the HTTP configuration. + The HTTP configuration. + + + Dispatches an incoming to an . + A representing the ongoing operation. + The request to dispatch + The cancellation token. + + + This class is the default endpoint message handler which examines the of the matched route, and chooses which message handler to call. If is null, then it delegates to . + + + Initializes a new instance of the class, using the provided and as the default handler. + The server configuration. + + + Initializes a new instance of the class, using the provided and . + The server configuration. + The default handler to use when the has no . + + + Sends an HTTP request as an asynchronous operation. + The task object representing the asynchronous operation. + The HTTP request message to send. + The cancellation token to cancel operation. + + + Provides an abstraction for managing the assemblies of an application. A different implementation can be registered via the . + + + Returns a list of assemblies available for the application. + An <see cref="T:System.Collections.Generic.ICollection`1" /> of assemblies. + + + Defines the methods that are required for an . + + + Creates an object. + An object. + The message request. + The HTTP controller descriptor. + The type of the controller. + + + Defines the methods that are required for an factory. + + + Returns a map, keyed by controller string, of all that the selector can select. This is primarily called by to discover all the possible controllers in the system. + A map of all that the selector can select, or null if the selector does not have a well-defined mapping of . + + + Selects a for the given . + An instance. + The request message. + + + Provides an abstraction for managing the controller types of an application. A different implementation can be registered via the DependencyResolver. + + + Returns a list of controllers available for the application. + An <see cref="T:System.Collections.Generic.ICollection`1" /> of controllers. + The resolver for failed assemblies. + + + Provides the catch blocks used within this assembly. + + + Gets the catch block in System.Web.Http.ExceptionHandling.ExceptionCatchBlocks.HttpBatchHandler.SendAsync. + The catch block in System.Web.Http.ExceptionHandling.ExceptionCatchBlocks.HttpBatchHandler.SendAsync. + + + Gets the catch block in System.Web.Http.ExceptionHandling.ExceptionCatchBlocks.HttpControllerDispatcher.SendAsync. + The catch block in System.Web.Http.ExceptionHandling.ExceptionCatchBlocks.HttpControllerDispatcher.SendAsync. + + + Gets the catch block in System.Web.Http.ExceptionHandling.ExceptionCatchBlocks.HttpServer.SendAsync. + The catch block in System.Web.Http.ExceptionHandling.ExceptionCatchBlocks.HttpServer.SendAsync. + + + Gets the catch block in System.Web.Http.ApiController.ExecuteAsync when using . + The catch block in System.Web.Http.ApiController.ExecuteAsync when using . + + + Represents an exception and the contextual data associated with it when it was caught. + + + Initializes a new instance of the class. + The caught exception. + The catch block where the exception was caught. + + + Initializes a new instance of the class. + The caught exception. + The catch block where the exception was caught. + The request being processed when the exception was caught. + + + Initializes a new instance of the class. + The caught exception. + The catch block where the exception was caught. + The request being processed when the exception was caught. + The repsonse being returned when the exception was caught. + + + Initializes a new instance of the class. + The caught exception. + The catch block where the exception was caught. + The action context in which the exception occurred. + + + Gets the action context in which the exception occurred, if available. + The action context in which the exception occurred, if available. + + + Gets the catch block in which the exception was caught. + The catch block in which the exception was caught. + + + Gets the controller context in which the exception occurred, if available. + The controller context in which the exception occurred, if available. + + + Gets the caught exception. + The caught exception. + + + Gets the request being processed when the exception was caught. + The request being processed when the exception was caught. + + + Gets the request context in which the exception occurred. + The request context in which the exception occurred. + + + Gets the response being sent when the exception was caught. + The response being sent when the exception was caught. + + + Represents the catch block location for an exception context. + + + Initializes a new instance of the class. + The label for the catch block where the exception was caught. + A value indicating whether the catch block where the exception was caught is the last one before the host. + A value indicating whether exceptions in the catch block can be handled after they are logged. + + + Gets a value indicating whether exceptions in the catch block can be handled after they are logged. + A value indicating whether exceptions in the catch block can be handled after they are logged. + + + Gets a value indicating whether the catch block where the exception was caught is the last one before the host. + A value indicating whether the catch block where the exception was caught is the last one before the host. + + + Gets a label for the catch block in which the exception was caught. + A label for the catch block in which the exception was caught. + + + Returns . + + + Represents an unhandled exception handler. + + + Initializes a new instance of the class. + + + When overridden in a derived class, handles the exception synchronously. + The exception handler context. + + + When overridden in a derived class, handles the exception asynchronously. + A task representing the asynchronous exception handling operation. + The exception handler context. + The token to monitor for cancellation requests. + + + Determines whether the exception should be handled. + true if the exception should be handled; otherwise, false. + The exception handler context. + + + Returns . + + + Represents the context within which unhandled exception handling occurs. + + + Initializes a new instance of the class. + The exception context. + + + Gets the catch block in which the exception was caught. + The catch block in which the exception was caught. + + + Gets the caught exception. + The caught exception. + + + Gets the exception context providing the exception and related data. + The exception context providing the exception and related data. + + + Gets the request being processed when the exception was caught. + The request being processed when the exception was caught. + + + Gets the request context in which the exception occurred. + The request context in which the exception occurred. + + + Gets or sets the result providing the response message when the exception is handled. + The result providing the response message when the exception is handled. + + + Provides extension methods for . + + + Calls an exception handler and determines the response handling it, if any. + A task that, when completed, contains the response message to return when the exception is handled, or null when the exception remains unhandled. + The unhandled exception handler. + The exception context. + The token to monitor for cancellation requests. + + + Represents an unhandled exception logger. + + + Initializes a new instance of the class. + + + When overridden in a derived class, logs the exception synchronously. + The exception logger context. + + + When overridden in a derived class, logs the exception asynchronously. + A task representing the asynchronous exception logging operation. + The exception logger context. + The token to monitor for cancellation requests. + + + Determines whether the exception should be logged. + true if the exception should be logged; otherwise, false. + The exception logger context. + + + Returns . + + + Represents the context within which unhandled exception logging occurs. + + + Initializes a new instance of the class. + The exception context. + + + Gets or sets a value indicating whether the exception can subsequently be handled by an to produce a new response message. + A value indicating whether the exception can subsequently be handled by an to produce a new response message. + + + Gets the catch block in which the exception was caught. + The catch block in which the exception was caught. + + + Gets the caught exception. + The caught exception. + + + Gets the exception context providing the exception and related data. + The exception context providing the exception and related data. + + + Gets the request being processed when the exception was caught. + The request being processed when the exception was caught. + + + Gets the request context in which the exception occurred. + The request context in which the exception occurred. + + + Provides extension methods for . + + + Calls an exception logger. + A task representing the asynchronous exception logging operation. + The unhandled exception logger. + The exception context. + The token to monitor for cancellation requests. + + + Creates exception services to call logging and handling from catch blocks. + + + Gets an exception handler that calls the registered handler service, if any, and ensures exceptions do not accidentally propagate to the host. + An exception handler that calls any registered handler and ensures exceptions do not accidentally propagate to the host. + The services container. + + + Gets an exception handler that calls the registered handler service, if any, and ensures exceptions do not accidentally propagate to the host. + An exception handler that calls any registered handler and ensures exceptions do not accidentally propagate to the host. + The configuration. + + + Gets an exception logger that calls all registered logger services. + A composite logger. + The services container. + + + Gets an exception logger that calls all registered logger services. + A composite logger. + The configuration. + + + Defines an unhandled exception handler. + + + Process an unhandled exception, either allowing it to propagate or handling it by providing a response message to return instead. + A task representing the asynchronous exception handling operation. + The exception handler context. + The token to monitor for cancellation requests. + + + Defines an unhandled exception logger. + + + Logs an unhandled exception. + A task representing the asynchronous exception logging operation. + The exception logger context. + The token to monitor for cancellation requests. + + + Provides information about an action method, such as its name, controller, parameters, attributes, and filters. + + + Initializes a new instance of the class. + + + Returns the filters that are associated with this action method. + The filters that are associated with this action method. + The configuration. + The action descriptor. + + + Represents the base class for all action-filter attributes. + + + Initializes a new instance of the class. + + + Occurs after the action method is invoked. + The action executed context. + + + + Occurs before the action method is invoked. + The action context. + + + + Executes the filter action asynchronously. + The newly created task for this operation. + The action context. + The cancellation token assigned for this task. + The delegate function to continue after the action method is invoked. + + + Provides details for authorization filter. + + + Initializes a new instance of the class. + + + Calls when a process requests authorization. + The action context, which encapsulates information for using . + + + + Executes the authorization filter during synchronization. + The authorization filter during synchronization. + The action context, which encapsulates information for using . + The cancellation token that cancels the operation. + A continuation of the operation. + + + Represents the configuration filter provider. + + + Initializes a new instance of the class. + + + Returns the filters that are associated with this configuration method. + The filters that are associated with this configuration method. + The configuration. + The action descriptor. + + + Represents the attributes for the exception filter. + + + Initializes a new instance of the class. + + + Raises the exception event. + The context for the action. + + + + Asynchronously executes the exception filter. + The result of the execution. + The context for the action. + The cancellation context. + + + Represents the base class for action-filter attributes. + + + Initializes a new instance of the class. + + + Gets a value that indicates whether multiple filters are allowed. + true if multiple filters are allowed; otherwise, false. + + + Provides information about the available action filters. + + + Initializes a new instance of the class. + The instance of this class. + The scope of this class. + + + Gets or sets an instance of the . + A . + + + Gets or sets the scope . + The scope of the FilterInfo. + + + Defines values that specify the order in which filters run within the same filter type and filter order. + + + Specifies an order after Controller. + + + Specifies an order before Action and after Global. + + + Specifies an action before Controller. + + + Represents the action of the HTTP executed context. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The action context. + The exception. + + + Gets or sets the HTTP action context. + The HTTP action context. + + + Gets or sets the exception that was raised during the execution. + The exception that was raised during the execution. + + + Gets the object for the context. + The object for the context. + + + Gets or sets the for the context. + The for the context. + + + Represents an authentication challenge context containing information for executing an authentication challenge. + + + Initializes a new instance of the class. + The action context. + The current action result. + + + Gets the action context. + + + Gets the request message. + + + Gets or sets the action result to execute. + + + Represents an authentication context containing information for performing authentication. + + + Initializes a new instance of the class. + The action context. + The current principal. + + + Gets the action context. + The action context. + + + Gets or sets an action result that will produce an error response (if authentication failed; otherwise, null). + An action result that will produce an error response. + + + Gets or sets the authenticated principal. + The authenticated principal. + + + Gets the request message. + The request message. + + + Represents a collection of HTTP filters. + + + Initializes a new instance of the class. + + + Adds an item at the end of the collection. + The item to add to the collection. + + + + Removes all item in the collection. + + + Determines whether the collection contains the specified item. + true if the collection contains the specified item; otherwise, false. + The item to check. + + + Gets the number of elements in the collection. + The number of elements in the collection. + + + Gets an enumerator that iterates through the collection. + An enumerator object that can be used to iterate through the collection. + + + Removes the specified item from the collection. + The item to remove in the collection. + + + Gets an enumerator that iterates through the collection. + An enumerator object that can be used to iterate through the collection. + + + Defines the methods that are used in an action filter. + + + Executes the filter action asynchronously. + The newly created task for this operation. + The action context. + The cancellation token assigned for this task. + The delegate function to continue after the action method is invoked. + + + Defines a filter that performs authentication. + + + Authenticates the request. + A Task that will perform authentication. + The authentication context. + The token to monitor for cancellation requests. + + + + Defines the methods that are required for an authorization filter. + + + Executes the authorization filter to synchronize. + The authorization filter to synchronize. + The action context. + The cancellation token associated with the filter. + The continuation. + + + Defines the methods that are required for an exception filter. + + + Executes an asynchronous exception filter. + An asynchronous exception filter. + The action executed context. + The cancellation token. + + + Defines the methods that are used in a filter. + + + Gets or sets a value indicating whether more than one instance of the indicated attribute can be specified for a single program element. + true if more than one instance is allowed to be specified; otherwise, false. The default is false. + + + Provides filter information. + + + Returns an enumeration of filters. + An enumeration of filters. + The HTTP configuration. + The action descriptor. + + + + + Provides common keys for properties stored in the + + + Provides a key for the client certificate for this request. + + + Provides a key for the associated with this request. + + + Provides a key for the collection of resources that should be disposed when a request is disposed. + + + Provides a key for the associated with this request. + + + Provides a key for the associated with this request. + + + Provides a key for the associated with this request. + + + Provides a key that indicates whether error details are to be included in the response for this HTTP request. + + + Provides a key that indicates whether the request is a batch request. + + + Provides a key that indicates whether the request originates from a local address. + + + Provides a key that indicates whether the request failed to match a route. + + + Provides a key for the for this request. + + + Provides a key for the stored in . This is the correlation ID for that request. + + + Provides a key for the parsed query string stored in . + + + Provides a key for a delegate which can retrieve the client certificate for this request. + + + Provides a key for the current stored in Properties(). If Current() is null then no context is stored. + + + Interface for controlling the use of buffering requests and responses in the host. If a host provides support for buffering requests and/or responses then it can use this interface to determine the policy for when buffering is to be used. + + + Determines whether the host should buffer the entity body. + true if buffering should be used; otherwise a streamed request should be used. + The host context. + + + Determines whether the host should buffer the entity body. + true if buffering should be used; otherwise a streamed response should be used. + The HTTP response message. + + + Represents a message handler that suppresses host authentication results. + + + Initializes a new instance of the class. + + + Asynchronously sends a request message. + That task that completes the asynchronous operation. + The request message to send. + The cancellation token. + + + Represents the metadata class of the ModelMetadata. + + + Initializes a new instance of the class. + The provider. + The type of the container. + The model accessor. + The type of the model. + The name of the property. + + + Gets a dictionary that contains additional metadata about the model. + A dictionary that contains additional metadata about the model. + + + Gets or sets the type of the container for the model. + The type of the container for the model. + + + Gets or sets a value that indicates whether empty strings that are posted back in forms should be converted to null. + true if empty strings that are posted back in forms should be converted to null; otherwise, false. The default value is true. + + + Gets or sets the description of the model. + The description of the model. The default value is null. + + + Gets the display name for the model. + The display name for the model. + + + Gets a list of validators for the model. + A list of validators for the model. + The validator providers for the model. + + + Gets or sets a value that indicates whether the model is a complex type. + A value that indicates whether the model is considered a complex. + + + Gets a value that indicates whether the type is nullable. + true if the type is nullable; otherwise, false. + + + Gets or sets a value that indicates whether the model is read-only. + true if the model is read-only; otherwise, false. + + + Gets the value of the model. + The model value can be null. + + + Gets the type of the model. + The type of the model. + + + Gets a collection of model metadata objects that describe the properties of the model. + A collection of model metadata objects that describe the properties of the model. + + + Gets the property name. + The property name. + + + Gets or sets the provider. + The provider. + + + Provides an abstract base class for a custom metadata provider. + + + Initializes a new instance of the class. + + + Gets a ModelMetadata object for each property of a model. + A ModelMetadata object for each property of a model. + The container. + The type of the container. + + + Gets a metadata for the specified property. + The metadata model for the specified property. + The model accessor. + The type of the container. + The property to get the metadata model for. + + + Gets the metadata for the specified model accessor and model type. + The metadata. + The model accessor. + The type of the mode. + + + Provides an abstract class to implement a metadata provider. + The type of the model metadata. + + + Initializes a new instance of the class. + + + When overridden in a derived class, creates the model metadata for the property using the specified prototype. + The model metadata for the property. + The prototype from which to create the model metadata. + The model accessor. + + + When overridden in a derived class, creates the model metadata for the property. + The model metadata for the property. + The set of attributes. + The type of the container. + The type of the model. + The name of the property. + + + Retrieves a list of properties for the model. + A list of properties for the model. + The model container. + The type of the container. + + + Retrieves the metadata for the specified property using the container type and property name. + The metadata for the specified property. + The model accessor. + The type of the container. + The name of the property. + + + Returns the metadata for the specified property using the type of the model. + The metadata for the specified property. + The model accessor. + The type of the container. + + + Provides prototype cache data for . + + + Initializes a new instance of the class. + The attributes that provides data for the initialization. + + + Gets or sets the metadata display attribute. + The metadata display attribute. + + + Gets or sets the metadata display format attribute. + The metadata display format attribute. + + + + Gets or sets the metadata editable attribute. + The metadata editable attribute. + + + Gets or sets the metadata read-only attribute. + The metadata read-only attribute. + + + Provides a container for common metadata, for the class, for a data model. + + + Initializes a new instance of the class. + The prototype used to initialize the model metadata. + The model accessor. + + + Initializes a new instance of the class. + The metadata provider. + The type of the container. + The type of the model. + The name of the property. + The attributes that provides data for the initialization. + + + Retrieves a value that indicates whether empty strings that are posted back in forms should be converted to null. + true if empty strings that are posted back in forms should be converted to null; otherwise, false. + + + Retrieves the description of the model. + The description of the model. + + + Retrieves a value that indicates whether the model is read-only. + true if the model is read-only; otherwise, false. + + + + Provides prototype cache data for the . + The type of prototype cache. + + + Initializes a new instance of the class. + The prototype. + The model accessor. + + + Initializes a new instance of the class. + The provider. + The type of container. + The type of the model. + The name of the property. + The prototype cache. + + + Indicates whether empty strings that are posted back in forms should be computed and converted to null. + true if empty strings that are posted back in forms should be computed and converted to null; otherwise, false. + + + Indicates the computation value. + The computation value. + + + Gets a value that indicates whether the model is a complex type. + A value that indicates whether the model is considered a complex type by the Web API framework. + + + Gets a value that indicates whether the model to be computed is read-only. + true if the model to be computed is read-only; otherwise, false. + + + Gets or sets a value that indicates whether empty strings that are posted back in forms should be converted to null. + true if empty strings that are posted back in forms should be converted to null; otherwise, false. The default value is true. + + + Gets or sets the description of the model. + The description of the model. + + + Gets a value that indicates whether the model is a complex type. + A value that indicates whether the model is considered a complex type by the Web API framework. + + + Gets or sets a value that indicates whether the model is read-only. + true if the model is read-only; otherwise, false. + + + Gets or sets a value that indicates whether the prototype cache is updating. + true if the prototype cache is updating; otherwise, false. + + + Implements the default model metadata provider. + + + Initializes a new instance of the class. + + + Creates the metadata from prototype for the specified property. + The metadata for the property. + The prototype. + The model accessor. + + + Creates the metadata for the specified property. + The metadata for the property. + The attributes. + The type of the container. + The type of the model. + The name of the property. + + + Represents an empty model metadata provider. + + + Initializes a new instance of the class. + + + Creates metadata from prototype. + The metadata. + The model metadata prototype. + The model accessor. + + + Creates a prototype of the metadata provider of the . + A prototype of the metadata provider. + The attributes. + The type of container. + The type of model. + The name of the property. + + + Represents the binding directly to the cancellation token. + + + Initializes a new instance of the class. + The binding descriptor. + + + Executes the binding during synchronization. + The binding during synchronization. + The metadata provider. + The action context. + The notification after the cancellation of the operations. + + + Represents an attribute that invokes a custom model binder. + + + Initializes a new instance of the class. + + + Retrieves the associated model binder. + A reference to an object that implements the interface. + + + Represents the default action value of the binder. + + + Initializes a new instance of the class. + + + Default implementation of the interface. This interface is the primary entry point for binding action parameters. + The associated with the . + The action descriptor. + + + Gets the associated with the . + The associated with the . + The parameter descriptor. + + + Defines a binding error. + + + Initializes a new instance of the class. + The error descriptor. + The message. + + + Gets the error message. + The error message. + + + Executes the binding method during synchronization. + The metadata provider. + The action context. + The cancellation Token value. + + + Represents parameter binding that will read from the body and invoke the formatters. + + + Initializes a new instance of the class. + The descriptor. + The formatter. + The body model validator. + + + Gets or sets an interface for the body model validator. + An interface for the body model validator. + + + Gets the error message. + The error message. + + + Asynchronously execute the binding of . + The result of the action. + The metadata provider. + The context associated with the action. + The cancellation token. + + + Gets or sets an enumerable object that represents the formatter for the parameter binding. + An enumerable object that represents the formatter for the parameter binding. + + + Asynchronously reads the content of . + The result of the action. + The request. + The type. + The formatter. + The format logger. + + + + Gets whether the will read body. + True if the will read body; otherwise, false. + + + Represents the extensions for the collection of form data. + + + Reads the collection extensions with specified type. + The read collection extensions. + The form data. + The generic type. + + + Reads the collection extensions with specified type. + The collection extensions. + The form data. + The name of the model. + The required member selector. + The formatter logger. + The generic type. + + + + + + Reads the collection extensions with specified type. + The collection extensions with specified type. + The form data. + The type of the object. + + + Reads the collection extensions with specified type and model name. + The collection extensions. + The form data. + The type of the object. + The name of the model. + The required member selector. + The formatter logger. + + + Deserialize the form data to the given type, using model binding. + best attempt to bind the object. The best attempt may be null. + collection with parsed form url data + target type to read as + null or empty to read the entire form as a single object. This is common for body data. Or the name of a model to do a partial binding against the form data. This is common for extracting individual fields. + The used to determine required members. + The to log events to. + The configuration to pick binder from. Can be null if the config was not created already. In that case a new config is created. + + + + + + + + Enumerates the behavior of the HTTP binding. + + + Never use HTTP binding. + + + The optional binding behavior + + + HTTP binding is required. + + + Provides a base class for model-binding behavior attributes. + + + Initializes a new instance of the class. + The behavior. + + + Gets or sets the behavior category. + The behavior category. + + + Gets the unique identifier for this attribute. + The id for this attribute. + + + Parameter binds to the request. + + + Initializes a new instance of the class. + The parameter descriptor. + + + Asynchronously executes parameter binding. + The binded parameter. + The metadata provider. + The action context. + The cancellation token. + + + Defines the methods that are required for a model binder. + + + Binds the model to a value by using the specified controller context and binding context. + true if model binding is successful; otherwise, false. + The action context. + The binding context. + + + Represents a value provider for parameter binding. + + + Gets the instances used by this parameter binding. + The instances used by this parameter binding. + + + Represents the class for handling HTML form URL-ended data, also known as application/x-www-form-urlencoded. + + + Initializes a new instance of the class. + + + + Determines whether this can read objects of the specified . + true if objects of this type can be read; otherwise false. + The type of object that will be read. + + + Reads an object of the specified from the specified stream. This method is called during deserialization. + A whose result will be the object instance that has been read. + The type of object to read. + The from which to read. + The content being read. + The to log events to. + + + Specify this parameter uses a model binder. This can optionally specify the specific model binder and value providers that drive that model binder. Derived attributes may provide convenience settings for the model binder or value provider. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The type of model binder. + + + Gets or sets the type of model binder. + The type of model binder. + + + Gets the binding for a parameter. + The that contains the binding. + The parameter to bind. + + + Get the IModelBinder for this type. + a non-null model binder. + The configuration. + model type that the binder is expected to bind. + + + Gets the model binder provider. + The instance. + The configuration object. + + + Gets the value providers that will be fed to the model binder. + A collection of instances. + The configuration object. + + + Gets or sets the name to consider as the parameter name during model binding. + The parameter name to consider. + + + Gets or sets a value that specifies whether the prefix check should be suppressed. + true if the prefix check should be suppressed; otherwise, false. + + + Provides a container for model-binder configuration. + + + Gets or sets the name of the resource file (class key) that contains localized string values. + The name of the resource file (class key). + + + Gets or sets the current provider for type-conversion error message. + The current provider for type-conversion error message. + + + Gets or sets the current provider for value-required error messages. + The error message provider. + + + Provides a container for model-binder error message provider. + + + Describes a parameter that gets bound via ModelBinding. + + + Initializes a new instance of the class. + The parameter descriptor. + The model binder. + The collection of value provider factory. + + + Gets the model binder. + The model binder. + + + Asynchronously executes the parameter binding via the model binder. + The task that is signaled when the binding is complete. + The metadata provider to use for validation. + The action context for the binding. + The cancellation token assigned for this task for cancelling the binding operation. + + + Gets the collection of value provider factory. + The collection of value provider factory. + + + Provides an abstract base class for model binder providers. + + + Initializes a new instance of the class. + + + Finds a binder for the given type. + A binder, which can attempt to bind this type. Or null if the binder knows statically that it will never be able to bind the type. + A configuration object. + The type of the model to bind against. + + + Provides the context in which a model binder functions. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The binding context. + + + Gets or sets a value that indicates whether the binder should use an empty prefix. + true if the binder should use an empty prefix; otherwise, false. + + + Gets or sets the model. + The model. + + + Gets or sets the model metadata. + The model metadata. + + + Gets or sets the name of the model. + The name of the model. + + + Gets or sets the state of the model. + The state of the model. + + + Gets or sets the type of the model. + The type of the model. + + + Gets the property metadata. + The property metadata. + + + Gets or sets the validation node. + The validation node. + + + Gets or sets the value provider. + The value provider. + + + Represents an error that occurs during model binding. + + + Initializes a new instance of the class by using the specified exception. + The exception. + + + Initializes a new instance of the class by using the specified exception and error message. + The exception. + The error message + + + Initializes a new instance of the class by using the specified error message. + The error message + + + Gets or sets the error message. + The error message. + + + Gets or sets the exception object. + The exception object. + + + Represents a collection of instances. + + + Initializes a new instance of the class. + + + Adds the specified Exception object to the model-error collection. + The exception. + + + Adds the specified error message to the model-error collection. + The error message. + + + Encapsulates the state of model binding to a property of an action-method argument, or to the argument itself. + + + Initializes a new instance of the class. + + + Gets a object that contains any errors that occurred during model binding. + The model state errors. + + + Gets a object that encapsulates the value that was being bound during model binding. + The model state value. + + + Represents the state of an attempt to bind a posted form to an action method, which includes validation information. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using values that are copied from the specified model-state dictionary. + The dictionary. + + + Adds the specified item to the model-state dictionary. + The object to add to the model-state dictionary. + + + Adds an element that has the specified key and value to the model-state dictionary. + The key of the element to add. + The value of the element to add. + + + Adds the specified model error to the errors collection for the model-state dictionary that is associated with the specified key. + The key. + The exception. + + + Adds the specified error message to the errors collection for the model-state dictionary that is associated with the specified key. + The key. + The error message. + + + Removes all items from the model-state dictionary. + + + Determines whether the model-state dictionary contains a specific value. + true if item is found in the model-state dictionary; otherwise, false. + The object to locate in the model-state dictionary. + + + Determines whether the model-state dictionary contains the specified key. + true if the model-state dictionary contains the specified key; otherwise, false. + The key to locate in the model-state dictionary. + + + Copies the elements of the model-state dictionary to an array, starting at a specified index. + The array. The array must have zero-based indexing. + The zero-based index in array at which copying starts. + + + Gets the number of key/value pairs in the collection. + The number of key/value pairs in the collection. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Gets a value that indicates whether the collection is read-only. + true if the collection is read-only; otherwise, false. + + + Gets a value that indicates whether this instance of the model-state dictionary is valid. + true if this instance is valid; otherwise, false. + + + Determines whether there are any objects that are associated with or prefixed with the specified key. + true if the model-state dictionary contains a value that is associated with the specified key; otherwise, false. + The key. + + + Gets or sets the value that is associated with the specified key. + The model state item. + The key. + + + Gets a collection that contains the keys in the dictionary. + A collection that contains the keys of the model-state dictionary. + + + Copies the values from the specified object into this dictionary, overwriting existing values if keys are the same. + The dictionary. + + + Removes the first occurrence of the specified object from the model-state dictionary. + true if item was successfully removed the model-state dictionary; otherwise, false. This method also returns false if item is not found in the model-state dictionary. + The object to remove from the model-state dictionary. + + + Removes the element that has the specified key from the model-state dictionary. + true if the element is successfully removed; otherwise, false. This method also returns false if key was not found in the model-state dictionary. + The key of the element to remove. + + + Sets the value for the specified key by using the specified value provider dictionary. + The key. + The value. + + + Returns an enumerator that iterates through a collection. + An IEnumerator object that can be used to iterate through the collection. + + + Attempts to gets the value that is associated with the specified key. + true if the object contains an element that has the specified key; otherwise, false. + The key of the value to get. + The value associated with the specified key. + + + Gets a collection that contains the values in the dictionary. + A collection that contains the values of the model-state dictionary. + + + Collection of functions that can produce a parameter binding for a given parameter. + + + Initializes a new instance of the class. + + + Adds function to the end of the collection. The function added is a wrapper around funcInner that checks that parameterType matches typeMatch. + type to match against HttpParameterDescriptor.ParameterType + inner function that is invoked if type match succeeds + + + Insert a function at the specified index in the collection. /// The function added is a wrapper around funcInner that checks that parameterType matches typeMatch. + index to insert at. + type to match against HttpParameterDescriptor.ParameterType + inner function that is invoked if type match succeeds + + + Execute each binding function in order until one of them returns a non-null binding. + the first non-null binding produced for the parameter. Of null if no binding is produced. + parameter to bind. + + + Maps a browser request to an array. + The type of the array. + + + Initializes a new instance of the class. + + + Indicates whether the model is binded. + true if the specified model is binded; otherwise, false. + The action context. + The binding context. + + + Converts the collection to an array. + true in all cases. + The action context. + The binding context. + The new collection. + + + Provides a model binder for arrays. + + + Initializes a new instance of the class. + + + Returns a model binder for arrays. + A model binder object or null if the attempt to get a model binder is unsuccessful. + The configuration. + The type of model. + + + Maps a browser request to a collection. + The type of the collection. + + + Initializes a new instance of the class. + + + Binds the model by using the specified execution context and binding context. + true if model binding is successful; otherwise, false. + The action context. + The binding context. + + + Provides a way for derived classes to manipulate the collection before returning it from the binder. + true in all cases. + The action context. + The binding context. + The new collection. + + + Provides a model binder for a collection. + + + Initializes a new instance of the class. + + + Retrieves a model binder for a collection. + The model binder. + The configuration of the model. + The type of the model. + + + Represents a data transfer object (DTO) for a complex model. + + + Initializes a new instance of the class. + The model metadata. + The collection of property metadata. + + + Gets or sets the model metadata of the . + The model metadata of the . + + + Gets or sets the collection of property metadata of the . + The collection of property metadata of the . + + + Gets or sets the results of the . + The results of the . + + + Represents a model binder for object. + + + Initializes a new instance of the class. + + + Determines whether the specified model is binded. + true if the specified model is binded; otherwise, false. + The action context. + The binding context. + + + Represents a complex model that invokes a model binder provider. + + + Initializes a new instance of the class. + + + Retrieves the associated model binder. + The model binder. + The configuration. + The type of the model to retrieve. + + + Represents the result for object. + + + Initializes a new instance of the class. + The object model. + The validation node. + + + Gets or sets the model for this object. + The model for this object. + + + Gets or sets the for this object. + The for this object. + + + Represents an that delegates to one of a collection of instances. + + + Initializes a new instance of the class. + An enumeration of binders. + + + Initializes a new instance of the class. + An array of binders. + + + Indicates whether the specified model is binded. + true if the model is binded; otherwise, false. + The action context. + The binding context. + + + Represents the class for composite model binder providers. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + A collection of + + + Gets the binder for the model. + The binder for the model. + The binder configuration. + The type of the model. + + + Gets the providers for the composite model binder. + The collection of providers. + + + Maps a browser request to a dictionary data object. + The type of the key. + The type of the value. + + + Initializes a new instance of the class. + + + Converts the collection to a dictionary. + true in all cases. + The action context. + The binding context. + The new collection. + + + Provides a model binder for a dictionary. + + + Initializes a new instance of the class. + + + Retrieves the associated model binder. + The associated model binder. + The configuration to use. + The type of model. + + + Maps a browser request to a key/value pair data object. + The type of the key. + The type of the value. + + + Initializes a new instance of the class. + + + Binds the model by using the specified execution context and binding context. + true if model binding is successful; otherwise, false. + The action context. + The binding context. + + + Provides a model binder for a collection of key/value pairs. + + + Initializes a new instance of the class. + + + Retrieves the associated model binder. + The associated model binder. + The configuration. + The type of model. + + + Maps a browser request to a mutable data object. + + + Initializes a new instance of the class. + + + Binds the model by using the specified action context and binding context. + true if binding is successful; otherwise, false. + The action context. + The binding context. + + + Retrieves a value that indicates whether a property can be updated. + true if the property can be updated; otherwise, false. + The metadata for the property to be evaluated. + + + Creates an instance of the model. + The newly created model object. + The action context. + The binding context. + + + Creates a model instance if an instance does not yet exist in the binding context. + The action context. + The binding context. + + + Retrieves metadata for properties of the model. + The metadata for properties of the model. + The action context. + The binding context. + + + Sets the value of a specified property. + The action context. + The binding context. + The metadata for the property to set. + The validation information about the property. + The validator for the model. + + + Provides a model binder for mutable objects. + + + Initializes a new instance of the class. + + + Retrieves the model binder for the specified type. + The model binder. + The configuration. + The type of the model to retrieve. + + + Provides a simple model binder for this model binding class. + + + Initializes a new instance of the class. + The model type. + The model binder factory. + + + Initializes a new instance of the class by using the specified model type and the model binder. + The model type. + The model binder. + + + Returns a model binder by using the specified execution context and binding context. + The model binder, or null if the attempt to get a model binder is unsuccessful. + The configuration. + The model type. + + + Gets the type of the model. + The type of the model. + + + Gets or sets a value that specifies whether the prefix check should be suppressed. + true if the prefix check should be suppressed; otherwise, false. + + + Maps a browser request to a data object. This type is used when model binding requires conversions using a .NET Framework type converter. + + + Initializes a new instance of the class. + + + Binds the model by using the specified controller context and binding context. + true if model binding is successful; otherwise, false. + The action context. + The binding context. + + + Provides a model binder for a model that requires type conversion. + + + Initializes a new instance of the class. + + + Retrieve a model binder for a model that requires type conversion. + The model binder, or Nothing if the type cannot be converted or there is no value to convert. + The configuration of the binder. + The type of the model. + + + Maps a browser request to a data object. This class is used when model binding does not require type conversion. + + + Initializes a new instance of the class. + + + Binds the model by using the specified execution context and binding context. + true if model binding is successful; otherwise, false. + The action context. + The binding context. + + + Provides a model binder for a model that does not require type conversion. + + + Initializes a new instance of the class. + + + Retrieves the associated model binder. + The associated model binder. + The configuration. + The type of model. + + + Represents an action result that returns response and performs content negotiation on an see with . + + + Initializes a new instance of the class. + The user-visible error message. + The content negotiator to handle content negotiation. + The request message which led to this result. + The formatters to use to negotiate and format the content. + + + Initializes a new instance of the class. + The user-visible error message. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content negotiator to handle content negotiation. + Returns . + + + Returns . + + + Gets the formatters to use to negotiate and format the content. + Returns . + + + Gets the user-visible error message. + Returns . + + + Gets the request message which led to this result. + Returns . + + + Represents an action result that returns an empty response. + + + Initializes a new instance of the class. + The request message which led to this result. + + + Initializes a new instance of the class. + The controller from which to obtain the dependencies needed for execution. + + + Asynchronously executes the request. + The task that completes the execute operation. + The cancellation token. + + + Gets the request message which led to this result. + The request message which led to this result. + + + Represents an action result that returns an empty HttpStatusCode.Conflict response. + + + Initializes a new instance of the class. + The request message which led to this result. + + + Initializes a new instance of the class. + The controller from which to obtain the dependencies needed for execution. + + + Executes asynchronously the operation of the conflict result. + Asynchronously executes the specified task. + The cancellation token. + + + Gets the request message which led to this result. + The HTTP request message which led to this result. + + + Represents an action result that performs route generation and content negotiation and returns a response when content negotiation succeeds. + The type of content in the entity body. + + + Initializes a new instance of the class with the values provided. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + The content value to negotiate and format in the entity body. + The controller from which to obtain the dependencies needed for execution. + + + Initializes a new instance of the class with the values provided. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + The content value to negotiate and format in the entity body. + The factory to use to generate the route URL. + The content negotiator to handle content negotiation. + The request message which led to this result. + The formatters to use to negotiate and format the content. + + + Gets the content value to negotiate and format in the entity body. + + + Gets the content negotiator to handle content negotiation. + + + + Gets the formatters to use to negotiate and format the content. + + + Gets the request message which led to this result. + + + Gets the name of the route to use for generating the URL. + + + Gets the route data to use for generating the URL. + + + Gets the factory to use to generate the route URL. + + + Represents an action result that performs content negotiation and returns a response when it succeeds. + The type of content in the entity body. + + + Initializes a new instance of the class with the values provided. + The content value to negotiate and format in the entity body. + The location at which the content has been created. + The content negotiator to handle content negotiation. + The request message which led to this result. + The formatters to use to negotiate and format the content. + + + Initializes a new instance of the class with the values provided. + The location at which the content has been created. + The content value to negotiate and format in the entity body. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content value to negotiate and format in the entity body. + The content value to negotiate and format in the entity body. + + + Gets the content negotiator to handle content negotiation. + The content negotiator to handle content negotiation. + + + Executes asynchronously the operation of the created negotiated content result. + Asynchronously executes a return value. + The cancellation token. + + + Gets the formatters to use to negotiate and format the content. + The formatters to use to negotiate and format the content. + + + Gets the location at which the content has been created. + The location at which the content has been created. + + + Gets the request message which led to this result. + The HTTP request message which led to this result. + + + Represents an action result that returns a response and performs content negotiation on an  based on an . + + + Initializes a new instance of the class. + The exception to include in the error. + true if the error should include exception messages; otherwise, false . + The content negotiator to handle content negotiation. + The request message which led to this result. + The formatters to use to negotiate and format the content. + + + Initializes a new instance of the class. + The exception to include in the error. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content negotiator to handle content negotiation. + Returns . + + + Gets the exception to include in the error. + Returns . + + + Returns . + + + Gets the formatters to use to negotiate and format the content. + Returns . + + + Gets a value indicating whether the error should include exception messages. + Returns . + + + Gets the request message which led to this result. + Returns . + + + Represents an action result that returns formatted content. + The type of content in the entity body. + + + Initializes a new instance of the class with the values provided. + The HTTP status code for the response message. + The content value to format in the entity body. + The formatter to use to format the content. + The value for the Content-Type header, or to have the formatter pick a default value. + The request message which led to this result. + + + Initializes a new instance of the class with the values provided. + The HTTP status code for the response message. + The content value to format in the entity body. + The formatter to use to format the content. + The value for the Content-Type header, or to have the formatter pick a default value. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content value to format in the entity body. + + + + Gets the formatter to use to format the content. + + + Gets the value for the Content-Type header, or to have the formatter pick a default value. + + + Gets the request message which led to this result. + + + Gets the HTTP status code for the response message. + + + Represents an action result that returns an empty response. + + + Initializes a new instance of the class. + The request message which led to this result. + + + Initializes a new instance of the class. + The controller from which to obtain the dependencies needed for execution. + + + Returns . + + + Gets the request message which led to this result. + Returns . + + + Represents an action result that returns a response and performs content negotiation on an based on a . + + + Initializes a new instance of the class. + The model state to include in the error. + true if the error should include exception messages; otherwise, false. + The content negotiator to handle content negotiation. + The request message which led to this result. + The formatters to use to negotiate and format the content. + + + Initializes a new instance of the class. + The model state to include in the error. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content negotiator to handle content negotiation. + The content negotiator to handle content negotiation. + + + Creates a response message asynchronously. + A task that, when completed, contains the response message. + The token to monitor for cancellation requests. + + + Gets the formatters to use to negotiate and format the content. + The formatters to use to negotiate and format the content. + + + Gets a value indicating whether the error should include exception messages. + true if the error should include exception messages; otherwise, false. + + + Gets the model state to include in the error. + The model state to include in the error. + + + Gets the request message which led to this result. + The request message which led to this result. + + + Represents an action result that returns an response with JSON data. + The type of content in the entity body. + + + Initializes a new instance of the class with the values provided. + The content value to serialize in the entity body. + The serializer settings. + The content encoding. + The request message which led to this result. + + + Initializes a new instance of the class with the values provided. + The content value to serialize in the entity body. + The serializer settings. + The content encoding. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content value to serialize in the entity body. + The content value to serialize in the entity body. + + + Gets the content encoding. + The content encoding. + + + Creates a response message asynchronously. + A task that, when completed, contains the response message. + The token to monitor for cancellation requests. + + + Gets the request message which led to this result. + The request message which led to this result. + + + Gets the serializer settings. + The serializer settings. + + + Represents an action result that performs content negotiation. + The type of content in the entity body. + + + Initializes a new instance of the class with the values provided. + The HTTP status code for the response message. + The content value to negotiate and format in the entity body. + The content negotiator to handle content negotiation. + The request message which led to this result. + The formatters to use to negotiate and format the content. + + + Initializes a new instance of the class with the values provided. + The HTTP status code for the response message. + The content value to negotiate and format in the entity body. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content value to negotiate and format in the entity body. + The content value to negotiate and format in the entity body. + + + Gets the content negotiator to handle content negotiation. + The content negotiator to handle content negotiation. + + + Executes asynchronously an HTTP negotiated content results. + Asynchronously executes an HTTP negotiated content results. + The cancellation token. + + + Gets the formatters to use to negotiate and format the content. + The formatters to use to negotiate and format the content. + + + Gets the request message which led to this result. + The HTTP request message which led to this result. + + + Gets the HTTP status code for the response message. + The HTTP status code for the response message. + + + Represents an action result that returns an empty response. + + + Initializes a new instance of the class. + The request message which led to this result. + + + Initializes a new instance of the class. + The controller from which to obtain the dependencies needed for execution. + + + + Gets the request message which led to this result. + + + Represents an action result that performs content negotiation and returns an HttpStatusCode.OK response when it succeeds. + The type of content in the entity body. + + + Initializes a new instance of the class with the values provided. + The content value to negotiate and format in the entity body. + The content negotiator to handle content negotiation. + The request message which led to this result. + The formatters to use to negotiate and format the content. + + + Initializes a new instance of the class with the values provided. + The content value to negotiate and format in the entity body. + The controller from which to obtain the dependencies needed for execution. + + + Gets the content value to negotiate and format in the entity body. + + + Gets the content negotiator to handle content negotiation. + + + + Gets the formatters to use to negotiate and format the content. + + + Gets the request message which led to this result. + + + Represents an action result that returns an empty HttpStatusCode.OK response. + + + Initializes a new instance of the class. + The request message which led to this result. + + + Initializes a new instance of the class. + The controller from which to obtain the dependencies needed for execution. + + + Executes asynchronously. + Returns the task. + The cancellation token. + + + Gets a HTTP request message for the results. + A HTTP request message for the results. + + + Represents an action result for a <see cref="F:System.Net.HttpStatusCode.Redirect"/>. + + + Initializes a new instance of the <see cref="T:System.Web.Http.Results.RedirectResult"/> class with the values provided. + The location to which to redirect. + The request message which led to this result. + + + Initializes a new instance of the <see cref="T:System.Web.Http.Results.RedirectResult"/> class with the values provided. + The location to which to redirect. + The controller from which to obtain the dependencies needed for execution. + + + Returns . + + + Gets the location at which the content has been created. + Returns . + + + Gets the request message which led to this result. + Returns . + + + Represents an action result that performs route generation and returns a <see cref="F:System.Net.HttpStatusCode.Redirect"/> response. + + + Initializes a new instance of the <see cref="T:System.Web.Http.Results.RedirectToRouteResult"/> class with the values provided. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + The controller from which to obtain the dependencies needed for execution. + + + Initializes a new instance of the <see cref="T:System.Web.Http.Results.RedirectToRouteResult"/> class with the values provided. + The name of the route to use for generating the URL. + The route data to use for generating the URL. + The factory to use to generate the route URL. + The request message which led to this result. + + + Returns . + + + Gets the request message which led to this result. + Returns . + + + Gets the name of the route to use for generating the URL. + Returns . + + + Gets the route data to use for generating the URL. + Returns . + + + Gets the factory to use to generate the route URL. + Returns . + + + Represents an action result that returns a specified response message. + + + Initializes a new instance of the class. + The response message. + + + + Gets the response message. + + + Represents an action result that returns a specified HTTP status code. + + + Initializes a new instance of the class. + The HTTP status code for the response message. + The request message which led to this result. + + + Initializes a new instance of the class. + The HTTP status code for the response message. + The controller from which to obtain the dependencies needed for execution. + + + Creates a response message asynchronously. + A task that, when completed, contains the response message. + The token to monitor for cancellation requests. + + + Gets the request message which led to this result. + The request message which led to this result. + + + Gets the HTTP status code for the response message. + The HTTP status code for the response message. + + + Represents an action result that returns an response. + + + Initializes a new instance of the class. + The WWW-Authenticate challenges. + The request message which led to this result. + + + Initializes a new instance of the class. + The WWW-Authenticate challenges. + The controller from which to obtain the dependencies needed for execution. + + + Gets the WWW-Authenticate challenges. + Returns . + + + Returns . + + + Gets the request message which led to this result. + Returns . + + + A default implementation of . + + + + Creates instances based on the provided factories and action. The route entries provide direct routing to the provided action. + A set of route entries. + The action descriptor. + The direct route factories. + The constraint resolver. + + + Gets a set of route factories for the given action descriptor. + A set of route factories. + The action descriptor. + + + Creates instances based on the provided factories, controller and actions. The route entries provided direct routing to the provided controller and can reach the set of provided actions. + A set of route entries. + The controller descriptor. + The action descriptors. + The direct route factories. + The constraint resolver. + + + Gets route factories for the given controller descriptor. + A set of route factories. + The controller descriptor. + + + Gets direct routes for the given controller descriptor and action descriptors based on attributes. + A set of route entries. + The controller descriptor. + The action descriptors for all actions. + The constraint resolver. + + + Gets the route prefix from the provided controller. + The route prefix or null. + The controller descriptor. + + + The default implementation of . Resolves constraints by parsing a constraint key and constraint arguments, using a map to resolve the constraint type, and calling an appropriate constructor for the constraint type. + + + Initializes a new instance of the class. + + + Gets the mutable dictionary that maps constraint keys to a particular constraint type. + The mutable dictionary that maps constraint keys to a particular constraint type. + + + Resolves the inline constraint. + The the inline constraint was resolved to. + The inline constraint to resolve. + + + Represents a context that supports creating a direct route. + + + Initializes a new instance of the class. + The route prefix, if any, defined by the controller. + The action descriptors to which to create a route. + The inline constraint resolver. + A value indicating whether the route is configured at the action or controller level. + + + Gets the action descriptors to which to create a route. + The action descriptors to which to create a route. + + + Creates a route builder that can build a route matching this context. + A route builder that can build a route matching this context. + The route template. + + + Creates a route builder that can build a route matching this context. + A route builder that can build a route matching this context. + The route template. + The inline constraint resolver to use, if any; otherwise, null. + + + Gets the inline constraint resolver. + The inline constraint resolver. + + + Gets the route prefix, if any, defined by the controller. + The route prefix, if any, defined by the controller. + + + Gets a value indicating whether the route is configured at the action or controller level. + true when the route is configured at the action level; otherwise false (if the route is configured at the controller level). + + + Enables you to define which HTTP verbs are allowed when ASP.NET routing determines whether a URL matches a route. + + + Initializes a new instance of the class by using the HTTP verbs that are allowed for the route. + The HTTP verbs that are valid for the route. + + + Gets or sets the collection of allowed HTTP verbs for the route. + A collection of allowed HTTP verbs for the route. + + + Determines whether the request was made with an HTTP verb that is one of the allowed verbs for the route. + When ASP.NET routing is processing a request, true if the request was made by using an allowed HTTP verb; otherwise, false. When ASP.NET routing is constructing a URL, true if the supplied values contain an HTTP verb that matches one of the allowed HTTP verbs; otherwise, false. The default is true. + The request that is being checked to determine whether it matches the URL. + The object that is being checked to determine whether it matches the URL. + The name of the parameter that is being checked. + An object that contains the parameters for a route. + An object that indicates whether the constraint check is being performed when an incoming request is processed or when a URL is generated. + + + Determines whether the request was made with an HTTP verb that is one of the allowed verbs for the route. + When ASP.NET routing is processing a request, true if the request was made by using an allowed HTTP verb; otherwise, false. When ASP.NET routing is constructing a URL, true if the supplied values contain an HTTP verb that matches one of the allowed HTTP verbs; otherwise, false. The default is true. + The request that is being checked to determine whether it matches the URL. + The object that is being checked to determine whether it matches the URL. + The name of the parameter that is being checked. + An object that contains the parameters for a route. + An object that indicates whether the constraint check is being performed when an incoming request is processed or when a URL is generated. + + + Represents a route class for self-host (i.e. hosted outside of ASP.NET). + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The route template. + + + Initializes a new instance of the class. + The route template. + The default values for the route parameters. + + + Initializes a new instance of the class. + The route template. + The default values for the route parameters. + The constraints for the route parameters. + + + Initializes a new instance of the class. + The route template. + The default values for the route parameters. + The constraints for the route parameters. + Any additional tokens for the route parameters. + + + Initializes a new instance of the class. + The route template. + The default values for the route parameters. + The constraints for the route parameters. + Any additional tokens for the route parameters. + The message handler that will be the recipient of the request. + + + Gets the constraints for the route parameters. + The constraints for the route parameters. + + + Gets any additional data tokens not used directly to determine whether a route matches an incoming . + Any additional data tokens not used directly to determine whether a route matches an incoming . + + + Gets the default values for route parameters if not provided by the incoming . + The default values for route parameters if not provided by the incoming . + + + Determines whether this route is a match for the incoming request by looking up the for the route. + The for a route if matches; otherwise null. + The virtual path root. + The HTTP request. + + + Attempts to generate a URI that represents the values passed in based on current values from the and new values using the specified . + A instance or null if URI cannot be generated. + The HTTP request message. + The route values. + + + Gets or sets the http route handler. + The http route handler. + + + Specifies the HTTP route key. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The HTTP request. + The constraints for the route parameters. + The name of the parameter. + The list of parameter values. + One of the enumeration values of the enumeration. + + + Gets the route template describing the URI pattern to match against. + The route template describing the URI pattern to match against. + + + Encapsulates information regarding the HTTP route. + + + Initializes a new instance of the class. + An object that defines the route. + + + Initializes a new instance of the class. + An object that defines the route. + The value. + + + Gets the object that represents the route. + the object that represents the route. + + + Gets a collection of URL parameter values and default values for the route. + An object that contains values that are parsed from the URL and from default values. + + + Removes all optional parameters that do not have a value from the route data. + + + If a route is really a union of other routes, return the set of sub routes. + Returns the set of sub routes contained within this route. + A union route data. + + + Removes all optional parameters that do not have a value from the route data. + The route data, to be mutated in-place. + + + Specifies an enumeration of route direction. + + + The UriGeneration direction. + + + The UriResolution direction. + + + Represents a route class for self-host of specified key/value pairs. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The dictionary. + + + Initializes a new instance of the class. + The key value. + + + Presents the data regarding the HTTP virtual path. + + + Initializes a new instance of the class. + The route of the virtual path. + The URL that was created from the route definition. + + + Gets or sets the route of the virtual path.. + The route of the virtual path. + + + Gets or sets the URL that was created from the route definition. + The URL that was created from the route definition. + + + Defines a builder that creates direct routes to actions (attribute routes). + + + Gets the action descriptors to which to create a route. + The action descriptors to which to create a route. + + + Creates a route entry based on the current property values. + The route entry created. + + + Gets or sets the route constraints. + The route constraints. + + + Gets or sets the route data tokens. + The route data tokens. + + + Gets or sets the route defaults. + The route defaults. + + + Gets or sets the route name, if any; otherwise null. + The route name, if any; otherwise null. + + + Gets or sets the route order. + The route order. + + + Gets or sets the route precedence. + The route precedence. + + + Gets a value indicating whether the route is configured at the action or controller level. + true when the route is configured at the action level; otherwise false (if the route is configured at the controller level). + + + Gets or sets the route template. + The route template. + + + Defines a factory that creates a route directly to a set of action descriptors (an attribute route). + + + Creates a direct route entry. + The direct route entry. + The context to use to create the route. + + + Defines a provider for routes that directly target action descriptors (attribute routes). + + + Gets the direct routes for a controller. + A set of route entries for the controller. + The controller descriptor. + The action descriptors. + The inline constraint resolver. + + + + defines the interface for a route expressing how to map an incoming to a particular controller and action. + + + Gets the constraints for the route parameters. + The constraints for the route parameters. + + + Gets any additional data tokens not used directly to determine whether a route matches an incoming . + The additional data tokens. + + + Gets the default values for route parameters if not provided by the incoming . + The default values for route parameters. + + + Determine whether this route is a match for the incoming request by looking up the <see cref="!:IRouteData" /> for the route. + The <see cref="!:RouteData" /> for a route if matches; otherwise null. + The virtual path root. + The request. + + + Gets a virtual path data based on the route and the values provided. + The virtual path data. + The request message. + The values. + + + Gets the message handler that will be the recipient of the request. + The message handler. + + + Gets the route template describing the URI pattern to match against. + The route template. + + + Represents a base class route constraint. + + + Determines whether this instance equals a specified route. + True if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Provides information about a route. + + + Gets the object that represents the route. + The object that represents the route. + + + Gets a collection of URL parameter values and default values for the route. + The values that are parsed from the URL and from default values. + + + Provides information for defining a route. + + + Gets the name of the route to generate. + + + Gets the order of the route relative to other routes. + + + Gets the route template describing the URI pattern to match against. + + + Defines the properties for HTTP route. + + + Gets the HTTP route. + The HTTP route. + + + Gets the URI that represents the virtual path of the current HTTP route. + The URI that represents the virtual path of the current HTTP route. + + + Defines an abstraction for resolving inline constraints as instances of . + + + Resolves the inline constraint. + The the inline constraint was resolved to. + The inline constraint to resolve. + + + Defines a route prefix. + + + Gets the route prefix. + The route prefix. + + + Represents a named route. + + + Initializes a new instance of the class. + The route name, if any; otherwise, null. + The route. + + + Gets the route name, if any; otherwise, null. + The route name, if any; otherwise, null. + + + Gets the route. + The route. + + + Represents an attribute route that may contain custom constraints. + + + Initializes a new instance of the class. + The route template. + + + Gets the route constraints, if any; otherwise null. + The route constraints, if any; otherwise null. + + + Creates the route entry + The created route entry. + The context. + + + Gets the route data tokens, if any; otherwise null. + The route data tokens, if any; otherwise null. + + + Gets the route defaults, if any; otherwise null. + The route defaults, if any; otherwise null. + + + Gets or sets the route name, if any; otherwise null. + The route name, if any; otherwise null. + + + Gets or sets the route order. + The route order. + + + Gets the route template. + The route template. + + + Represents a handler that specifies routing should not handle requests for a route template. When a route provides this class as a handler, requests matching against the route will be ignored. + + + Initializes a new instance of the class. + + + Represents a factory for creating URLs. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The HTTP request for this instance. + + + Creates an absolute URL using the specified path. + The generated URL. + The URL path, which may be a relative URL, a rooted URL, or a virtual path. + + + Returns a link for the specified route. + A link for the specified route. + The name of the route. + An object that contains the parameters for a route. + + + Returns a link for the specified route. + A link for the specified route. + The name of the route. + A route value. + + + Gets or sets the of the current instance. + The of the current instance. + + + Returns the route for the . + The route for the . + The name of the route. + A list of route values. + + + Returns the route for the . + The route for the . + The name of the route. + The route values. + + + Constrains a route parameter to contain only lowercase or uppercase letters A through Z in the English alphabet. + + + Initializes a new instance of the class. + + + Constrains a route parameter to represent only Boolean values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route by several child constraints. + + + Initializes a new instance of the class. + The child constraints that must match for this constraint to match. + + + Gets the child constraints that must match for this constraint to match. + The child constraints that must match for this constraint to match. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route of direction. + + + Constrains a route parameter to represent only decimal values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only 64-bit floating-point values. + + + + + Constrains a route parameter to represent only 32-bit floating-point values. + + + + + Constrains a route parameter to represent only values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to represent only 32-bit integer values. + + + Initializes a new instance of the class. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constrains a route parameter to be a string of a given length or within a given range of lengths. + + + + Initializes a new instance of the class that constrains a route parameter to be a string of a given length. + The minimum length of the route parameter. + The maximum length of the route parameter. + + + Gets the length of the route parameter, if one is set. + + + + Gets the maximum length of the route parameter, if one is set. + + + Gets the minimum length of the route parameter, if one is set. + + + Constrains a route parameter to represent only 64-bit integer values. + + + + + Constrains a route parameter to be a string with a maximum length. + + + Initializes a new instance of the class. + The maximum length. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the maximum length of the route parameter. + The maximum length of the route parameter. + + + Constrains a route parameter to be an integer with a maximum value. + + + + + Gets the maximum value of the route parameter. + + + Constrains a route parameter to be a string with a maximum length. + + + Initializes a new instance of the class. + The minimum length. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the minimum length of the route parameter. + The minimum length of the route parameter. + + + Constrains a route parameter to be a long with a minimum value. + + + Initializes a new instance of the class. + The minimum value of the route parameter. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the minimum value of the route parameter. + The minimum value of the route parameter. + + + Constrains a route by an inner constraint that doesn't fail when an optional parameter is set to its default value. + + + Initializes a new instance of the class. + The inner constraint to match if the parameter is not an optional parameter without a value + + + Gets the inner constraint to match if the parameter is not an optional parameter without a value. + The inner constraint to match if the parameter is not an optional parameter without a value. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Constraints a route parameter to be an integer within a given range of values. + + + Initializes a new instance of the class. + The minimum value. + The maximum value. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the maximum value of the route parameter. + The maximum value of the route parameter. + + + Gets the minimum value of the route parameter. + The minimum value of the route parameter. + + + Constrains a route parameter to match a regular expression. + + + Initializes a new instance of the class. + The pattern. + + + Determines whether this instance equals a specified route. + true if this instance equals a specified route; otherwise, false. + The request. + The route to compare. + The name of the parameter. + A list of parameter values. + The route direction. + + + Gets the regular expression pattern to match. + The regular expression pattern to match. + + + Provides a method for retrieving the innermost object of an object that might be wrapped by an <see cref="T:System.Web.Http.Services.IDecorator`1" />. + + + Gets the innermost object which does not implement <see cref="T:System.Web.Http.Services.IDecorator`1" />. + Object which needs to be unwrapped. + + + + Represents a container for service instances used by the . Note that this container only supports known types, and methods to get or set arbitrary service types will throw when called. For creation of arbitrary types, please use instead. The supported types for this container are: Passing any type which is not on this to any method on this interface will cause an to be thrown. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specified object. + The object. + + + Removes a single-instance service from the default services. + The type of the service. + + + Gets a service of the specified type. + The first instance of the service, or null if the service is not found. + The type of service. + + + Gets the list of service objects for a given service type, and validates the service type. + The list of service objects of the specified type. + The service type. + + + Gets the list of service objects for a given service type. + The list of service objects of the specified type, or an empty list if the service is not found. + The type of service. + + + Queries whether a service type is single-instance. + true if the service type has at most one instance, or false if the service type supports multiple instances. + The service type. + + + Replaces a single-instance service object. + The service type. + The service object that replaces the previous instance. + + + Removes the cached values for a single service type. + The service type. + + + Defines a decorator that exposes the inner decorated object. + This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see . + + + Gets the inner object. + + + Represents a performance tracing class to log method entry/exit and duration. + + + Initializes the class with a specified configuration. + The configuration. + + + Represents the trace writer. + + + Invokes the specified traceAction to allow setting values in a new if and only if tracing is permitted at the given category and level. + The current . It may be null but doing so will prevent subsequent trace analysis from correlating the trace to a particular request. + The logical category for the trace. Users can define their own. + The at which to write this trace. + The action to invoke if tracing is enabled. The caller is expected to fill in the fields of the given in this action. + + + Represents an extension methods for . + + + Provides a set of methods and properties that help debug your code with the specified writer, request, category and exception. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The error occurred during execution. + + + Provides a set of methods and properties that help debug your code with the specified writer, request, category, exception, message format and argument. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The error occurred during execution. + The format of the message. + The message argument. + + + Provides a set of methods and properties that help debug your code with the specified writer, request, category, exception, message format and argument. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The format of the message. + The message argument. + + + Displays an error message in the list with the specified writer, request, category and exception. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The error occurred during execution. + + + Displays an error message in the list with the specified writer, request, category, exception, message format and argument. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The exception. + The format of the message. + The argument in the message. + + + Displays an error message in the list with the specified writer, request, category, message format and argument. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The format of the message. + The argument in the message. + + + Displays an error message in the class with the specified writer, request, category and exception. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The exception that appears during execution. + + + Displays an error message in the class with the specified writer, request, category and exception, message format and argument. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The exception. + The format of the message. + The message argument. + + + Displays an error message in the class with the specified writer, request, category and message format and argument. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The format of the message. + The message argument. + + + Displays the details in the . + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The error occurred during execution. + + + Displays the details in the . + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The error occurred during execution. + The format of the message. + The message argument. + + + Displays the details in the . + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The format of the message. + The message argument. + + + Indicates the trace listeners in the Listeners collection. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The trace level. + The error occurred during execution. + + + Indicates the trace listeners in the Listeners collection. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The trace level. + The error occurred during execution. + The format of the message. + The message argument. + + + Indicates the trace listeners in the Listeners collection. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The of the trace. + The format of the message. + The message argument. + + + Traces both a begin and an end trace around a specified operation. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The of the trace. + The name of the object performing the operation. It may be null. + The name of the operation being performed. It may be null. + The to invoke prior to performing the operation, allowing the given to be filled in. It may be null. + An <see cref="T:System.Func`1" /> that returns the that will perform the operation. + The to invoke after successfully performing the operation, allowing the given to be filled in. It may be null. + The to invoke if an error was encountered performing the operation, allowing the given to be filled in. It may be null. + + + Traces both a begin and an end trace around a specified operation. + The returned by the operation. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The of the trace. + The name of the object performing the operation. It may be null. + The name of the operation being performed. It may be null. + The to invoke prior to performing the operation, allowing the given to be filled in. It may be null. + An <see cref="T:System.Func`1" /> that returns the that will perform the operation. + The to invoke after successfully performing the operation, allowing the given to be filled in. The result of the completed task will also be passed to this action. This action may be null. + The to invoke if an error was encountered performing the operation, allowing the given to be filled in. It may be null. + The type of result produced by the . + + + Traces both a begin and an end trace around a specified operation. + The returned by the operation. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The of the trace. + The name of the object performing the operation. It may be null. + The name of the operation being performed. It may be null. + The to invoke prior to performing the operation, allowing the given to be filled in. It may be null. + An <see cref="T:System.Func`1" /> that returns the that will perform the operation. + The to invoke after successfully performing the operation, allowing the given to be filled in. It may be null. + The to invoke if an error was encountered performing the operation, allowing the given to be filled in. It may be null. + + + Indicates the warning level of execution. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The error occurred during execution. + + + Indicates the warning level of execution. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The error occurred during execution. + The format of the message. + The message argument. + + + Indicates the warning level of execution. + The . + The with which to associate the trace. It may be null. + The logical category of the trace. + The format of the message. + The message argument. + + + Specifies an enumeration of tracing categories. + + + An action category. + + + The controllers category. + + + The filters category. + + + The formatting category. + + + The message handlers category. + + + The model binding category. + + + The request category. + + + The routing category. + + + Specifies the kind of tracing operation. + + + Trace marking the beginning of some operation. + + + Trace marking the end of some operation. + + + Single trace, not part of a Begin/End trace pair. + + + Specifies an enumeration of tracing level. + + + Trace level for debugging traces. + + + Trace level for error traces. + + + Trace level for fatal traces. + + + Trace level for informational traces. + + + Tracing is disabled. + + + Trace level for warning traces. + + + Represents a trace record. + + + Initializes a new instance of the class. + The message request. + The trace category. + The trace level. + + + Gets or sets the tracing category. + The tracing category. + + + Gets or sets the exception. + The exception. + + + Gets or sets the kind of trace. + The kind of trace. + + + Gets or sets the tracing level. + The tracing level. + + + Gets or sets the message. + The message. + + + Gets or sets the logical operation name being performed. + The logical operation name being performed. + + + Gets or sets the logical name of the object performing the operation. + The logical name of the object performing the operation. + + + Gets the optional user-defined properties. + The optional user-defined properties. + + + Gets the from the record. + The from the record. + + + Gets the correlation ID from the . + The correlation ID from the . + + + Gets or sets the associated with the . + The associated with the . + + + Gets the of this trace (via ). + The of this trace (via ). + + + Represents a class used to recursively validate an object. + + + Initializes a new instance of the class. + + + Determines whether instances of a particular type should be validated. + true if the type should be validated; false otherwise. + The type to validate. + + + Determines whether the is valid and adds any validation errors to the 's . + true if model is valid, false otherwise. + The model to be validated. + The to use for validation. + The used to provide model metadata. + The within which the model is being validated. + The to append to the key for any validation errors. + + + Represents an interface for the validation of the models + + + Determines whether the model is valid and adds any validation errors to the actionContext's + trueif model is valid, false otherwise. + The model to be validated. + The to use for validation. + The used to provide the model metadata. + The within which the model is being validated. + The to append to the key for any validation errors. + + + This logs formatter errors to the provided . + + + Initializes a new instance of the class. + The model state. + The prefix. + + + Logs the specified model error. + The error path. + The error message. + + + Logs the specified model error. + The error path. + The error message. + + + Provides data for the event. + + + Initializes a new instance of the class. + The action context. + The parent node. + + + Gets or sets the context for an action. + The context for an action. + + + Gets or sets the parent of this node. + The parent of this node. + + + Provides data for the event. + + + Initializes a new instance of the class. + The action context. + The parent node. + + + Gets or sets the context for an action. + The context for an action. + + + Gets or sets the parent of this node. + The parent of this node. + + + Provides a container for model validation information. + + + Initializes a new instance of the class, using the model metadata and state key. + The model metadata. + The model state key. + + + Initializes a new instance of the class, using the model metadata, the model state key, and child model-validation nodes. + The model metadata. + The model state key. + The model child nodes. + + + Gets or sets the child nodes. + The child nodes. + + + Combines the current instance with a specified instance. + The model validation node to combine with the current instance. + + + Gets or sets the model metadata. + The model metadata. + + + Gets or sets the model state key. + The model state key. + + + Gets or sets a value that indicates whether validation should be suppressed. + true if validation should be suppressed; otherwise, false. + + + Validates the model using the specified execution context. + The action context. + + + Validates the model using the specified execution context and parent node. + The action context. + The parent node. + + + Gets or sets a value that indicates whether all properties of the model should be validated. + true if all properties of the model should be validated, or false if validation should be skipped. + + + Occurs when the model has been validated. + + + Occurs when the model is being validated. + + + Represents the selection of required members by checking for any required ModelValidators associated with the member. + + + Initializes a new instance of the class. + The metadata provider. + The validator providers. + + + Indicates whether the member is required for validation. + true if the member is required for validation; otherwise, false. + The member. + + + Provides a container for a validation result. + + + Initializes a new instance of the class. + + + Gets or sets the name of the member. + The name of the member. + + + Gets or sets the validation result message. + The validation result message. + + + Provides a base class for implementing validation logic. + + + Initializes a new instance of the class. + The validator providers. + + + Returns a composite model validator for the model. + A composite model validator for the model. + An enumeration of validator providers. + + + Gets a value that indicates whether a model property is required. + true if the model property is required; otherwise, false. + + + Validates a specified object. + A list of validation results. + The metadata. + The container. + + + Gets or sets an enumeration of validator providers. + An enumeration of validator providers. + + + Provides a list of validators for a model. + + + Initializes a new instance of the class. + + + Gets a list of validators associated with this . + The list of validators. + The metadata. + The validator providers. + + + Provides an abstract class for classes that implement a validation provider. + + + Initializes a new instance of the class. + + + Gets a type descriptor for the specified type. + A type descriptor for the specified type. + The type of the validation provider. + + + Gets the validators for the model using the metadata and validator providers. + The validators for the model. + The metadata. + An enumeration of validator providers. + + + Gets the validators for the model using the metadata, the validator providers, and a list of attributes. + The validators for the model. + The metadata. + An enumeration of validator providers. + The list of attributes. + + + Represents the method that creates a instance. + + + Represents an implementation of which providers validators for attributes which derive from . It also provides a validator for types which implement . To support client side validation, you can either register adapters through the static methods on this class, or by having your validation attributes implement . The logic to support IClientValidatable is implemented in . + + + Initializes a new instance of the class. + + + Gets the validators for the model using the specified metadata, validator provider and attributes. + The validators for the model. + The metadata. + The validator providers. + The attributes. + + + Registers an adapter to provide client-side validation. + The type of the validation attribute. + The type of the adapter. + + + Registers an adapter factory for the validation provider. + The type of the attribute. + The factory that will be used to create the object for the specified attribute. + + + Registers the default adapter. + The type of the adapter. + + + Registers the default adapter factory. + The factory that will be used to create the object for the default adapter. + + + Registers the default adapter type for objects which implement . The adapter type must derive from and it must contain a public constructor which takes two parameters of types and . + The type of the adapter. + + + Registers the default adapter factory for objects which implement . + The factory. + + + Registers an adapter type for the given modelType, which must implement . The adapter type must derive from and it must contain a public constructor which takes two parameters of types and . + The model type. + The type of the adapter. + + + Registers an adapter factory for the given modelType, which must implement . + The model type. + The factory. + + + Provides a factory for validators that are based on . + + + Represents a validator provider for data member model. + + + Initializes a new instance of the class. + + + Gets the validators for the model. + The validators for the model. + The metadata. + An enumerator of validator providers. + A list of attributes. + + + An implementation of which provides validators that throw exceptions when the model is invalid. + + + Initializes a new instance of the class. + + + Gets a list of validators associated with this . + The list of validators. + The metadata. + The validator providers. + The list of attributes. + + + Represents the provider for the required member model validator. + + + Initializes a new instance of the class. + The required member selector. + + + Gets the validator for the member model. + The validator for the member model. + The metadata. + The validator providers + + + Provides a model validator. + + + Initializes a new instance of the class. + The validator providers. + The validation attribute for the model. + + + Gets or sets the validation attribute for the model validator. + The validation attribute for the model validator. + + + Gets a value that indicates whether model validation is required. + true if model validation is required; otherwise, false. + + + Validates the model and returns the validation errors if any. + A list of validation error messages for the model, or an empty list if no errors have occurred. + The model metadata. + The container for the model. + + + A to represent an error. This validator will always throw an exception regardless of the actual model value. + + + Initializes a new instance of the class. + The list of model validator providers. + The error message for the exception. + + + Validates a specified object. + A list of validation results. + The metadata. + The container. + + + Represents the for required members. + + + Initializes a new instance of the class. + The validator providers. + + + Gets or sets a value that instructs the serialization engine that the member must be presents when validating. + true if the member is required; otherwise, false. + + + Validates the object. + A list of validation results. + The metadata. + The container. + + + Provides an object adapter that can be validated. + + + Initializes a new instance of the class. + The validation provider. + + + Validates the specified object. + A list of validation results. + The metadata. + The container. + + + Represents the base class for value providers whose values come from a collection that implements the interface. + + + Retrieves the keys from the specified . + The keys from the specified . + The prefix. + + + Represents an interface that is implemented by any that supports the creation of a to access the of an incoming . + + + Defines the methods that are required for a value provider in ASP.NET MVC. + + + Determines whether the collection contains the specified prefix. + true if the collection contains the specified prefix; otherwise, false. + The prefix to search for. + + + Retrieves a value object using the specified key. + The value object for the specified key, or null if the key is not found. + The key of the value object to retrieve. + + + This attribute is used to specify a custom . + + + Initializes a new instance of the . + The type of the model binder. + + + Initializes a new instance of the . + An array of model binder types. + + + Gets the value provider factories. + A collection of value provider factories. + A configuration object. + + + Gets the types of object returned by the value provider factory. + A collection of types. + + + Represents a factory for creating value-provider objects. + + + Initializes a new instance of the class. + + + Returns a value-provider object for the specified controller context. + A value-provider object. + An object that encapsulates information about the current HTTP request. + + + Represents the result of binding a value (such as from a form post or query string) to an action-method argument property, or to the argument itself. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The raw value. + The attempted value. + The culture. + + + Gets or sets the raw value that is converted to a string for display. + The raw value that is converted to a string for display. + + + Converts the value that is encapsulated by this result to the specified type. + The converted value. + The target type. + + + Converts the value that is encapsulated by this result to the specified type by using the specified culture information. + The converted value. + The target type. + The culture to use in the conversion. + + + Gets or sets the culture. + The culture. + + + Gets or set the raw value that is supplied by the value provider. + The raw value that is supplied by the value provider. + + + Represents a value provider whose values come from a list of value providers that implements the interface. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The list of value providers. + + + Determines whether the collection contains the specified . + true if the collection contains the specified ; otherwise, false. + The prefix to search for. + + + Retrieves the keys from the specified . + The keys from the specified . + The prefix from which keys are retrieved. + + + Retrieves a value object using the specified . + The value object for the specified . + The key of the value object to retrieve. + + + Inserts an element into the collection at the specified index. + The zero-based index at which should be inserted. + The object to insert. + + + Replaces the element at the specified index. + The zero-based index of the element to replace. + The new value for the element at the specified index. + + + Represents a factory for creating a list of value-provider objects. + + + Initializes a new instance of the class. + The collection of value-provider factories. + + + Retrieves a list of value-provider objects for the specified controller context. + The list of value-provider objects for the specified controller context. + An object that encapsulates information about the current HTTP request. + + + A value provider for name/value pairs. + + + + Initializes a new instance of the class. + The name/value pairs for the provider. + The culture used for the name/value pairs. + + + Initializes a new instance of the class, using a function delegate to provide the name/value pairs. + A function delegate that returns a collection of name/value pairs. + The culture used for the name/value pairs. + + + Determines whether the collection contains the specified prefix. + true if the collection contains the specified prefix; otherwise, false. + The prefix to search for. + + + Gets the keys from a prefix. + The keys. + The prefix. + + + Retrieves a value object using the specified key. + The value object for the specified key. + The key of the value object to retrieve. + + + Represents a value provider for query strings that are contained in a object. + + + Initializes a new instance of the class. + An object that encapsulates information about the current HTTP request. + An object that contains information about the target culture. + + + Represents a class that is responsible for creating a new instance of a query-string value-provider object. + + + Initializes a new instance of the class. + + + Retrieves a value-provider object for the specified controller context. + A query-string value-provider object. + An object that encapsulates information about the current HTTP request. + + + Represents a value provider for route data that is contained in an object that implements the IDictionary(Of TKey, TValue) interface. + + + Initializes a new instance of the class. + An object that contain information about the HTTP request. + An object that contains information about the target culture. + + + Represents a factory for creating route-data value provider objects. + + + Initializes a new instance of the class. + + + Retrieves a value-provider object for the specified controller context. + A value-provider object. + An object that encapsulates information about the current HTTP request. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ApiDescriptionExtensions.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ApiDescriptionExtensions.cs.pp new file mode 100644 index 0000000..845ba2e --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ApiDescriptionExtensions.cs.pp @@ -0,0 +1,39 @@ +using System; +using System.Text; +using System.Web; +using System.Web.Http.Description; + +namespace $rootnamespace$.Areas.HelpPage +{ + public static class ApiDescriptionExtensions + { + /// + /// Generates an URI-friendly ID for the . E.g. "Get-Values-id_name" instead of "GetValues/{id}?name={name}" + /// + /// The . + /// The ID as a string. + public static string GetFriendlyId(this ApiDescription description) + { + string path = description.RelativePath; + string[] urlParts = path.Split('?'); + string localPath = urlParts[0]; + string queryKeyString = null; + if (urlParts.Length > 1) + { + string query = urlParts[1]; + string[] queryKeys = HttpUtility.ParseQueryString(query).AllKeys; + queryKeyString = String.Join("_", queryKeys); + } + + StringBuilder friendlyPath = new StringBuilder(); + friendlyPath.AppendFormat("{0}-{1}", + description.HttpMethod.Method, + localPath.Replace("/", "-").Replace("{", String.Empty).Replace("}", String.Empty)); + if (queryKeyString != null) + { + friendlyPath.AppendFormat("_{0}", queryKeyString.Replace('.', '-')); + } + return friendlyPath.ToString(); + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/App_Start/HelpPageConfig.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/App_Start/HelpPageConfig.cs.pp new file mode 100644 index 0000000..62cbc72 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/App_Start/HelpPageConfig.cs.pp @@ -0,0 +1,113 @@ +// Uncomment the following to provide samples for PageResult. Must also add the Microsoft.AspNet.WebApi.OData +// package to your project. +////#define Handle_PageResultOfT + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Diagnostics; +using System.Diagnostics.CodeAnalysis; +using System.Linq; +using System.Net.Http.Headers; +using System.Reflection; +using System.Web; +using System.Web.Http; +#if Handle_PageResultOfT +using System.Web.Http.OData; +#endif + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// Use this class to customize the Help Page. + /// For example you can set a custom to supply the documentation + /// or you can provide the samples for the requests/responses. + /// + public static class HelpPageConfig + { + [SuppressMessage("Microsoft.Globalization", "CA1303:Do not pass literals as localized parameters", + MessageId = "$rootnamespace$.Areas.HelpPage.TextSample.#ctor(System.String)", + Justification = "End users may choose to merge this string with existing localized resources.")] + [SuppressMessage("Microsoft.Naming", "CA2204:Literals should be spelled correctly", + MessageId = "bsonspec", + Justification = "Part of a URI.")] + public static void Register(HttpConfiguration config) + { + //// Uncomment the following to use the documentation from XML documentation file. + //config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/XmlDocument.xml"))); + + //// Uncomment the following to use "sample string" as the sample for all actions that have string as the body parameter or return type. + //// Also, the string arrays will be used for IEnumerable. The sample objects will be serialized into different media type + //// formats by the available formatters. + //config.SetSampleObjects(new Dictionary + //{ + // {typeof(string), "sample string"}, + // {typeof(IEnumerable), new string[]{"sample 1", "sample 2"}} + //}); + + // Extend the following to provide factories for types not handled automatically (those lacking parameterless + // constructors) or for which you prefer to use non-default property values. Line below provides a fallback + // since automatic handling will fail and GeneratePageResult handles only a single type. +#if Handle_PageResultOfT + config.GetHelpPageSampleGenerator().SampleObjectFactories.Add(GeneratePageResult); +#endif + + // Extend the following to use a preset object directly as the sample for all actions that support a media + // type, regardless of the body parameter or return type. The lines below avoid display of binary content. + // The BsonMediaTypeFormatter (if available) is not used to serialize the TextSample object. + config.SetSampleForMediaType( + new TextSample("Binary JSON content. See http://bsonspec.org for details."), + new MediaTypeHeaderValue("application/bson")); + + //// Uncomment the following to use "[0]=foo&[1]=bar" directly as the sample for all actions that support form URL encoded format + //// and have IEnumerable as the body parameter or return type. + //config.SetSampleForType("[0]=foo&[1]=bar", new MediaTypeHeaderValue("application/x-www-form-urlencoded"), typeof(IEnumerable)); + + //// Uncomment the following to use "1234" directly as the request sample for media type "text/plain" on the controller named "Values" + //// and action named "Put". + //config.SetSampleRequest("1234", new MediaTypeHeaderValue("text/plain"), "Values", "Put"); + + //// Uncomment the following to use the image on "../images/aspNetHome.png" directly as the response sample for media type "image/png" + //// on the controller named "Values" and action named "Get" with parameter "id". + //config.SetSampleResponse(new ImageSample("../images/aspNetHome.png"), new MediaTypeHeaderValue("image/png"), "Values", "Get", "id"); + + //// Uncomment the following to correct the sample request when the action expects an HttpRequestMessage with ObjectContent. + //// The sample will be generated as if the controller named "Values" and action named "Get" were having string as the body parameter. + //config.SetActualRequestType(typeof(string), "Values", "Get"); + + //// Uncomment the following to correct the sample response when the action returns an HttpResponseMessage with ObjectContent. + //// The sample will be generated as if the controller named "Values" and action named "Post" were returning a string. + //config.SetActualResponseType(typeof(string), "Values", "Post"); + } + +#if Handle_PageResultOfT + private static object GeneratePageResult(HelpPageSampleGenerator sampleGenerator, Type type) + { + if (type.IsGenericType) + { + Type openGenericType = type.GetGenericTypeDefinition(); + if (openGenericType == typeof(PageResult<>)) + { + // Get the T in PageResult + Type[] typeParameters = type.GetGenericArguments(); + Debug.Assert(typeParameters.Length == 1); + + // Create an enumeration to pass as the first parameter to the PageResult constuctor + Type itemsType = typeof(List<>).MakeGenericType(typeParameters); + object items = sampleGenerator.GetSampleObject(itemsType); + + // Fill in the other information needed to invoke the PageResult constuctor + Type[] parameterTypes = new Type[] { itemsType, typeof(Uri), typeof(long?), }; + object[] parameters = new object[] { items, null, (long)ObjectGenerator.DefaultCollectionSize, }; + + // Call PageResult(IEnumerable items, Uri nextPageLink, long? count) constructor + ConstructorInfo constructor = type.GetConstructor(parameterTypes); + return constructor.Invoke(parameters); + } + } + + return null; + } +#endif + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Controllers/HelpController.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Controllers/HelpController.cs.pp new file mode 100644 index 0000000..26df340 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Controllers/HelpController.cs.pp @@ -0,0 +1,63 @@ +using System; +using System.Web.Http; +using System.Web.Mvc; +using $rootnamespace$.Areas.HelpPage.ModelDescriptions; +using $rootnamespace$.Areas.HelpPage.Models; + +namespace $rootnamespace$.Areas.HelpPage.Controllers +{ + /// + /// The controller that will handle requests for the help page. + /// + public class HelpController : Controller + { + private const string ErrorViewName = "Error"; + + public HelpController() + : this(GlobalConfiguration.Configuration) + { + } + + public HelpController(HttpConfiguration config) + { + Configuration = config; + } + + public HttpConfiguration Configuration { get; private set; } + + public ActionResult Index() + { + ViewBag.DocumentationProvider = Configuration.Services.GetDocumentationProvider(); + return View(Configuration.Services.GetApiExplorer().ApiDescriptions); + } + + public ActionResult Api(string apiId) + { + if (!String.IsNullOrEmpty(apiId)) + { + HelpPageApiModel apiModel = Configuration.GetHelpPageApiModel(apiId); + if (apiModel != null) + { + return View(apiModel); + } + } + + return View(ErrorViewName); + } + + public ActionResult ResourceModel(string modelName) + { + if (!String.IsNullOrEmpty(modelName)) + { + ModelDescriptionGenerator modelDescriptionGenerator = Configuration.GetModelDescriptionGenerator(); + ModelDescription modelDescription; + if (modelDescriptionGenerator.GeneratedModels.TryGetValue(modelName, out modelDescription)) + { + return View(modelDescription); + } + } + + return View(ErrorViewName); + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPage.css.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPage.css.pp new file mode 100644 index 0000000..f507723 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPage.css.pp @@ -0,0 +1,134 @@ +.help-page h1, +.help-page .h1, +.help-page h2, +.help-page .h2, +.help-page h3, +.help-page .h3, +#body.help-page, +.help-page-table th, +.help-page-table pre, +.help-page-table p { + font-family: "Segoe UI Light", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif; +} + +.help-page pre.wrapped { + white-space: -moz-pre-wrap; + white-space: -pre-wrap; + white-space: -o-pre-wrap; + white-space: pre-wrap; +} + +.help-page .warning-message-container { + margin-top: 20px; + padding: 0 10px; + color: #525252; + background: #EFDCA9; + border: 1px solid #CCCCCC; +} + +.help-page-table { + width: 100%; + border-collapse: collapse; + text-align: left; + margin: 0px 0px 20px 0px; + border-top: 1px solid #D4D4D4; +} + +.help-page-table th { + text-align: left; + font-weight: bold; + border-bottom: 1px solid #D4D4D4; + padding: 5px 6px 5px 6px; +} + +.help-page-table td { + border-bottom: 1px solid #D4D4D4; + padding: 10px 8px 10px 8px; + vertical-align: top; +} + +.help-page-table pre, +.help-page-table p { + margin: 0px; + padding: 0px; + font-family: inherit; + font-size: 100%; +} + +.help-page-table tbody tr:hover td { + background-color: #F3F3F3; +} + +.help-page a:hover { + background-color: transparent; +} + +.help-page .sample-header { + border: 2px solid #D4D4D4; + background: #00497E; + color: #FFFFFF; + padding: 8px 15px; + border-bottom: none; + display: inline-block; + margin: 10px 0px 0px 0px; +} + +.help-page .sample-content { + display: block; + border-width: 0; + padding: 15px 20px; + background: #FFFFFF; + border: 2px solid #D4D4D4; + margin: 0px 0px 10px 0px; +} + +.help-page .api-name { + width: 40%; +} + +.help-page .api-documentation { + width: 60%; +} + +.help-page .parameter-name { + width: 20%; +} + +.help-page .parameter-documentation { + width: 40%; +} + +.help-page .parameter-type { + width: 20%; +} + +.help-page .parameter-annotations { + width: 20%; +} + +.help-page h1, +.help-page .h1 { + font-size: 36px; + line-height: normal; +} + +.help-page h2, +.help-page .h2 { + font-size: 24px; +} + +.help-page h3, +.help-page .h3 { + font-size: 20px; +} + +#body.help-page { + font-size: 14px; + line-height: 143%; + color: #333; +} + +.help-page a { + color: #0000EE; + text-decoration: none; +} diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPageAreaRegistration.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPageAreaRegistration.cs.pp new file mode 100644 index 0000000..0ebefa2 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPageAreaRegistration.cs.pp @@ -0,0 +1,26 @@ +using System.Web.Http; +using System.Web.Mvc; + +namespace $rootnamespace$.Areas.HelpPage +{ + public class HelpPageAreaRegistration : AreaRegistration + { + public override string AreaName + { + get + { + return "HelpPage"; + } + } + + public override void RegisterArea(AreaRegistrationContext context) + { + context.MapRoute( + "HelpPage_Default", + "Help/{action}/{apiId}", + new { controller = "Help", action = "Index", apiId = UrlParameter.Optional }); + + HelpPageConfig.Register(GlobalConfiguration.Configuration); + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPageConfigurationExtensions.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPageConfigurationExtensions.cs.pp new file mode 100644 index 0000000..343325b --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/HelpPageConfigurationExtensions.cs.pp @@ -0,0 +1,467 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.ComponentModel; +using System.Diagnostics; +using System.Diagnostics.CodeAnalysis; +using System.Globalization; +using System.Linq; +using System.Net.Http; +using System.Net.Http.Headers; +using System.Web.Http; +using System.Web.Http.Controllers; +using System.Web.Http.Description; +using $rootnamespace$.Areas.HelpPage.ModelDescriptions; +using $rootnamespace$.Areas.HelpPage.Models; + +namespace $rootnamespace$.Areas.HelpPage +{ + public static class HelpPageConfigurationExtensions + { + private const string ApiModelPrefix = "MS_HelpPageApiModel_"; + + /// + /// Sets the documentation provider for help page. + /// + /// The . + /// The documentation provider. + public static void SetDocumentationProvider(this HttpConfiguration config, IDocumentationProvider documentationProvider) + { + config.Services.Replace(typeof(IDocumentationProvider), documentationProvider); + } + + /// + /// Sets the objects that will be used by the formatters to produce sample requests/responses. + /// + /// The . + /// The sample objects. + public static void SetSampleObjects(this HttpConfiguration config, IDictionary sampleObjects) + { + config.GetHelpPageSampleGenerator().SampleObjects = sampleObjects; + } + + /// + /// Sets the sample request directly for the specified media type and action. + /// + /// The . + /// The sample request. + /// The media type. + /// Name of the controller. + /// Name of the action. + public static void SetSampleRequest(this HttpConfiguration config, object sample, MediaTypeHeaderValue mediaType, string controllerName, string actionName) + { + config.GetHelpPageSampleGenerator().ActionSamples.Add(new HelpPageSampleKey(mediaType, SampleDirection.Request, controllerName, actionName, new[] { "*" }), sample); + } + + /// + /// Sets the sample request directly for the specified media type and action with parameters. + /// + /// The . + /// The sample request. + /// The media type. + /// Name of the controller. + /// Name of the action. + /// The parameter names. + public static void SetSampleRequest(this HttpConfiguration config, object sample, MediaTypeHeaderValue mediaType, string controllerName, string actionName, params string[] parameterNames) + { + config.GetHelpPageSampleGenerator().ActionSamples.Add(new HelpPageSampleKey(mediaType, SampleDirection.Request, controllerName, actionName, parameterNames), sample); + } + + /// + /// Sets the sample request directly for the specified media type of the action. + /// + /// The . + /// The sample response. + /// The media type. + /// Name of the controller. + /// Name of the action. + public static void SetSampleResponse(this HttpConfiguration config, object sample, MediaTypeHeaderValue mediaType, string controllerName, string actionName) + { + config.GetHelpPageSampleGenerator().ActionSamples.Add(new HelpPageSampleKey(mediaType, SampleDirection.Response, controllerName, actionName, new[] { "*" }), sample); + } + + /// + /// Sets the sample response directly for the specified media type of the action with specific parameters. + /// + /// The . + /// The sample response. + /// The media type. + /// Name of the controller. + /// Name of the action. + /// The parameter names. + public static void SetSampleResponse(this HttpConfiguration config, object sample, MediaTypeHeaderValue mediaType, string controllerName, string actionName, params string[] parameterNames) + { + config.GetHelpPageSampleGenerator().ActionSamples.Add(new HelpPageSampleKey(mediaType, SampleDirection.Response, controllerName, actionName, parameterNames), sample); + } + + /// + /// Sets the sample directly for all actions with the specified media type. + /// + /// The . + /// The sample. + /// The media type. + public static void SetSampleForMediaType(this HttpConfiguration config, object sample, MediaTypeHeaderValue mediaType) + { + config.GetHelpPageSampleGenerator().ActionSamples.Add(new HelpPageSampleKey(mediaType), sample); + } + + /// + /// Sets the sample directly for all actions with the specified type and media type. + /// + /// The . + /// The sample. + /// The media type. + /// The parameter type or return type of an action. + public static void SetSampleForType(this HttpConfiguration config, object sample, MediaTypeHeaderValue mediaType, Type type) + { + config.GetHelpPageSampleGenerator().ActionSamples.Add(new HelpPageSampleKey(mediaType, type), sample); + } + + /// + /// Specifies the actual type of passed to the in an action. + /// The help page will use this information to produce more accurate request samples. + /// + /// The . + /// The type. + /// Name of the controller. + /// Name of the action. + public static void SetActualRequestType(this HttpConfiguration config, Type type, string controllerName, string actionName) + { + config.GetHelpPageSampleGenerator().ActualHttpMessageTypes.Add(new HelpPageSampleKey(SampleDirection.Request, controllerName, actionName, new[] { "*" }), type); + } + + /// + /// Specifies the actual type of passed to the in an action. + /// The help page will use this information to produce more accurate request samples. + /// + /// The . + /// The type. + /// Name of the controller. + /// Name of the action. + /// The parameter names. + public static void SetActualRequestType(this HttpConfiguration config, Type type, string controllerName, string actionName, params string[] parameterNames) + { + config.GetHelpPageSampleGenerator().ActualHttpMessageTypes.Add(new HelpPageSampleKey(SampleDirection.Request, controllerName, actionName, parameterNames), type); + } + + /// + /// Specifies the actual type of returned as part of the in an action. + /// The help page will use this information to produce more accurate response samples. + /// + /// The . + /// The type. + /// Name of the controller. + /// Name of the action. + public static void SetActualResponseType(this HttpConfiguration config, Type type, string controllerName, string actionName) + { + config.GetHelpPageSampleGenerator().ActualHttpMessageTypes.Add(new HelpPageSampleKey(SampleDirection.Response, controllerName, actionName, new[] { "*" }), type); + } + + /// + /// Specifies the actual type of returned as part of the in an action. + /// The help page will use this information to produce more accurate response samples. + /// + /// The . + /// The type. + /// Name of the controller. + /// Name of the action. + /// The parameter names. + public static void SetActualResponseType(this HttpConfiguration config, Type type, string controllerName, string actionName, params string[] parameterNames) + { + config.GetHelpPageSampleGenerator().ActualHttpMessageTypes.Add(new HelpPageSampleKey(SampleDirection.Response, controllerName, actionName, parameterNames), type); + } + + /// + /// Gets the help page sample generator. + /// + /// The . + /// The help page sample generator. + public static HelpPageSampleGenerator GetHelpPageSampleGenerator(this HttpConfiguration config) + { + return (HelpPageSampleGenerator)config.Properties.GetOrAdd( + typeof(HelpPageSampleGenerator), + k => new HelpPageSampleGenerator()); + } + + /// + /// Sets the help page sample generator. + /// + /// The . + /// The help page sample generator. + public static void SetHelpPageSampleGenerator(this HttpConfiguration config, HelpPageSampleGenerator sampleGenerator) + { + config.Properties.AddOrUpdate( + typeof(HelpPageSampleGenerator), + k => sampleGenerator, + (k, o) => sampleGenerator); + } + + /// + /// Gets the model description generator. + /// + /// The configuration. + /// The + public static ModelDescriptionGenerator GetModelDescriptionGenerator(this HttpConfiguration config) + { + return (ModelDescriptionGenerator)config.Properties.GetOrAdd( + typeof(ModelDescriptionGenerator), + k => InitializeModelDescriptionGenerator(config)); + } + + /// + /// Gets the model that represents an API displayed on the help page. The model is initialized on the first call and cached for subsequent calls. + /// + /// The . + /// The ID. + /// + /// An + /// + public static HelpPageApiModel GetHelpPageApiModel(this HttpConfiguration config, string apiDescriptionId) + { + object model; + string modelId = ApiModelPrefix + apiDescriptionId; + if (!config.Properties.TryGetValue(modelId, out model)) + { + Collection apiDescriptions = config.Services.GetApiExplorer().ApiDescriptions; + ApiDescription apiDescription = apiDescriptions.FirstOrDefault(api => String.Equals(api.GetFriendlyId(), apiDescriptionId, StringComparison.OrdinalIgnoreCase)); + if (apiDescription != null) + { + model = GenerateApiModel(apiDescription, config); + config.Properties.TryAdd(modelId, model); + } + } + + return (HelpPageApiModel)model; + } + + private static HelpPageApiModel GenerateApiModel(ApiDescription apiDescription, HttpConfiguration config) + { + HelpPageApiModel apiModel = new HelpPageApiModel() + { + ApiDescription = apiDescription, + }; + + ModelDescriptionGenerator modelGenerator = config.GetModelDescriptionGenerator(); + HelpPageSampleGenerator sampleGenerator = config.GetHelpPageSampleGenerator(); + GenerateUriParameters(apiModel, modelGenerator); + GenerateRequestModelDescription(apiModel, modelGenerator, sampleGenerator); + GenerateResourceDescription(apiModel, modelGenerator); + GenerateSamples(apiModel, sampleGenerator); + + return apiModel; + } + + private static void GenerateUriParameters(HelpPageApiModel apiModel, ModelDescriptionGenerator modelGenerator) + { + ApiDescription apiDescription = apiModel.ApiDescription; + foreach (ApiParameterDescription apiParameter in apiDescription.ParameterDescriptions) + { + if (apiParameter.Source == ApiParameterSource.FromUri) + { + HttpParameterDescriptor parameterDescriptor = apiParameter.ParameterDescriptor; + Type parameterType = null; + ModelDescription typeDescription = null; + ComplexTypeModelDescription complexTypeDescription = null; + if (parameterDescriptor != null) + { + parameterType = parameterDescriptor.ParameterType; + typeDescription = modelGenerator.GetOrCreateModelDescription(parameterType); + complexTypeDescription = typeDescription as ComplexTypeModelDescription; + } + + // Example: + // [TypeConverter(typeof(PointConverter))] + // public class Point + // { + // public Point(int x, int y) + // { + // X = x; + // Y = y; + // } + // public int X { get; set; } + // public int Y { get; set; } + // } + // Class Point is bindable with a TypeConverter, so Point will be added to UriParameters collection. + // + // public class Point + // { + // public int X { get; set; } + // public int Y { get; set; } + // } + // Regular complex class Point will have properties X and Y added to UriParameters collection. + if (complexTypeDescription != null + && !IsBindableWithTypeConverter(parameterType)) + { + foreach (ParameterDescription uriParameter in complexTypeDescription.Properties) + { + apiModel.UriParameters.Add(uriParameter); + } + } + else if (parameterDescriptor != null) + { + ParameterDescription uriParameter = + AddParameterDescription(apiModel, apiParameter, typeDescription); + + if (!parameterDescriptor.IsOptional) + { + uriParameter.Annotations.Add(new ParameterAnnotation() { Documentation = "Required" }); + } + + object defaultValue = parameterDescriptor.DefaultValue; + if (defaultValue != null) + { + uriParameter.Annotations.Add(new ParameterAnnotation() { Documentation = "Default value is " + Convert.ToString(defaultValue, CultureInfo.InvariantCulture) }); + } + } + else + { + Debug.Assert(parameterDescriptor == null); + + // If parameterDescriptor is null, this is an undeclared route parameter which only occurs + // when source is FromUri. Ignored in request model and among resource parameters but listed + // as a simple string here. + ModelDescription modelDescription = modelGenerator.GetOrCreateModelDescription(typeof(string)); + AddParameterDescription(apiModel, apiParameter, modelDescription); + } + } + } + } + + private static bool IsBindableWithTypeConverter(Type parameterType) + { + if (parameterType == null) + { + return false; + } + + return TypeDescriptor.GetConverter(parameterType).CanConvertFrom(typeof(string)); + } + + private static ParameterDescription AddParameterDescription(HelpPageApiModel apiModel, + ApiParameterDescription apiParameter, ModelDescription typeDescription) + { + ParameterDescription parameterDescription = new ParameterDescription + { + Name = apiParameter.Name, + Documentation = apiParameter.Documentation, + TypeDescription = typeDescription, + }; + + apiModel.UriParameters.Add(parameterDescription); + return parameterDescription; + } + + private static void GenerateRequestModelDescription(HelpPageApiModel apiModel, ModelDescriptionGenerator modelGenerator, HelpPageSampleGenerator sampleGenerator) + { + ApiDescription apiDescription = apiModel.ApiDescription; + foreach (ApiParameterDescription apiParameter in apiDescription.ParameterDescriptions) + { + if (apiParameter.Source == ApiParameterSource.FromBody) + { + Type parameterType = apiParameter.ParameterDescriptor.ParameterType; + apiModel.RequestModelDescription = modelGenerator.GetOrCreateModelDescription(parameterType); + apiModel.RequestDocumentation = apiParameter.Documentation; + } + else if (apiParameter.ParameterDescriptor != null && + apiParameter.ParameterDescriptor.ParameterType == typeof(HttpRequestMessage)) + { + Type parameterType = sampleGenerator.ResolveHttpRequestMessageType(apiDescription); + + if (parameterType != null) + { + apiModel.RequestModelDescription = modelGenerator.GetOrCreateModelDescription(parameterType); + } + } + } + } + + private static void GenerateResourceDescription(HelpPageApiModel apiModel, ModelDescriptionGenerator modelGenerator) + { + ResponseDescription response = apiModel.ApiDescription.ResponseDescription; + Type responseType = response.ResponseType ?? response.DeclaredType; + if (responseType != null && responseType != typeof(void)) + { + apiModel.ResourceDescription = modelGenerator.GetOrCreateModelDescription(responseType); + } + } + + [SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", Justification = "The exception is recorded as ErrorMessages.")] + private static void GenerateSamples(HelpPageApiModel apiModel, HelpPageSampleGenerator sampleGenerator) + { + try + { + foreach (var item in sampleGenerator.GetSampleRequests(apiModel.ApiDescription)) + { + apiModel.SampleRequests.Add(item.Key, item.Value); + LogInvalidSampleAsError(apiModel, item.Value); + } + + foreach (var item in sampleGenerator.GetSampleResponses(apiModel.ApiDescription)) + { + apiModel.SampleResponses.Add(item.Key, item.Value); + LogInvalidSampleAsError(apiModel, item.Value); + } + } + catch (Exception e) + { + apiModel.ErrorMessages.Add(String.Format(CultureInfo.CurrentCulture, + "An exception has occurred while generating the sample. Exception message: {0}", + HelpPageSampleGenerator.UnwrapException(e).Message)); + } + } + + private static bool TryGetResourceParameter(ApiDescription apiDescription, HttpConfiguration config, out ApiParameterDescription parameterDescription, out Type resourceType) + { + parameterDescription = apiDescription.ParameterDescriptions.FirstOrDefault( + p => p.Source == ApiParameterSource.FromBody || + (p.ParameterDescriptor != null && p.ParameterDescriptor.ParameterType == typeof(HttpRequestMessage))); + + if (parameterDescription == null) + { + resourceType = null; + return false; + } + + resourceType = parameterDescription.ParameterDescriptor.ParameterType; + + if (resourceType == typeof(HttpRequestMessage)) + { + HelpPageSampleGenerator sampleGenerator = config.GetHelpPageSampleGenerator(); + resourceType = sampleGenerator.ResolveHttpRequestMessageType(apiDescription); + } + + if (resourceType == null) + { + parameterDescription = null; + return false; + } + + return true; + } + + private static ModelDescriptionGenerator InitializeModelDescriptionGenerator(HttpConfiguration config) + { + ModelDescriptionGenerator modelGenerator = new ModelDescriptionGenerator(config); + Collection apis = config.Services.GetApiExplorer().ApiDescriptions; + foreach (ApiDescription api in apis) + { + ApiParameterDescription parameterDescription; + Type parameterType; + if (TryGetResourceParameter(api, config, out parameterDescription, out parameterType)) + { + modelGenerator.GetOrCreateModelDescription(parameterType); + } + } + return modelGenerator; + } + + private static void LogInvalidSampleAsError(HelpPageApiModel apiModel, object sample) + { + InvalidSample invalidSample = sample as InvalidSample; + if (invalidSample != null) + { + apiModel.ErrorMessages.Add(invalidSample.ErrorMessage); + } + } + } +} diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/CollectionModelDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/CollectionModelDescription.cs.pp new file mode 100644 index 0000000..4a82cdf --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/CollectionModelDescription.cs.pp @@ -0,0 +1,7 @@ +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class CollectionModelDescription : ModelDescription + { + public ModelDescription ElementDescription { get; set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ComplexTypeModelDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ComplexTypeModelDescription.cs.pp new file mode 100644 index 0000000..f01e4a0 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ComplexTypeModelDescription.cs.pp @@ -0,0 +1,14 @@ +using System.Collections.ObjectModel; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class ComplexTypeModelDescription : ModelDescription + { + public ComplexTypeModelDescription() + { + Properties = new Collection(); + } + + public Collection Properties { get; private set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/DictionaryModelDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/DictionaryModelDescription.cs.pp new file mode 100644 index 0000000..3ae8139 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/DictionaryModelDescription.cs.pp @@ -0,0 +1,6 @@ +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class DictionaryModelDescription : KeyValuePairModelDescription + { + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/EnumTypeModelDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/EnumTypeModelDescription.cs.pp new file mode 100644 index 0000000..21f44f5 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/EnumTypeModelDescription.cs.pp @@ -0,0 +1,15 @@ +using System.Collections.Generic; +using System.Collections.ObjectModel; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class EnumTypeModelDescription : ModelDescription + { + public EnumTypeModelDescription() + { + Values = new Collection(); + } + + public Collection Values { get; private set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/EnumValueDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/EnumValueDescription.cs.pp new file mode 100644 index 0000000..18cb99f --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/EnumValueDescription.cs.pp @@ -0,0 +1,11 @@ +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class EnumValueDescription + { + public string Documentation { get; set; } + + public string Name { get; set; } + + public string Value { get; set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/IModelDocumentationProvider.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/IModelDocumentationProvider.cs.pp new file mode 100644 index 0000000..f5fbecc --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/IModelDocumentationProvider.cs.pp @@ -0,0 +1,12 @@ +using System; +using System.Reflection; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public interface IModelDocumentationProvider + { + string GetDocumentation(MemberInfo member); + + string GetDocumentation(Type type); + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/KeyValuePairModelDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/KeyValuePairModelDescription.cs.pp new file mode 100644 index 0000000..620e573 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/KeyValuePairModelDescription.cs.pp @@ -0,0 +1,9 @@ +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class KeyValuePairModelDescription : ModelDescription + { + public ModelDescription KeyModelDescription { get; set; } + + public ModelDescription ValueModelDescription { get; set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelDescription.cs.pp new file mode 100644 index 0000000..878186c --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelDescription.cs.pp @@ -0,0 +1,16 @@ +using System; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + /// + /// Describes a type model. + /// + public abstract class ModelDescription + { + public string Documentation { get; set; } + + public Type ModelType { get; set; } + + public string Name { get; set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelDescriptionGenerator.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelDescriptionGenerator.cs.pp new file mode 100644 index 0000000..7d71bff --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelDescriptionGenerator.cs.pp @@ -0,0 +1,451 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.Specialized; +using System.ComponentModel.DataAnnotations; +using System.Globalization; +using System.Reflection; +using System.Runtime.Serialization; +using System.Web.Http; +using System.Web.Http.Description; +using System.Xml.Serialization; +using Newtonsoft.Json; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + /// + /// Generates model descriptions for given types. + /// + public class ModelDescriptionGenerator + { + // Modify this to support more data annotation attributes. + private readonly IDictionary> AnnotationTextGenerator = new Dictionary> + { + { typeof(RequiredAttribute), a => "Required" }, + { typeof(RangeAttribute), a => + { + RangeAttribute range = (RangeAttribute)a; + return String.Format(CultureInfo.CurrentCulture, "Range: inclusive between {0} and {1}", range.Minimum, range.Maximum); + } + }, + { typeof(MaxLengthAttribute), a => + { + MaxLengthAttribute maxLength = (MaxLengthAttribute)a; + return String.Format(CultureInfo.CurrentCulture, "Max length: {0}", maxLength.Length); + } + }, + { typeof(MinLengthAttribute), a => + { + MinLengthAttribute minLength = (MinLengthAttribute)a; + return String.Format(CultureInfo.CurrentCulture, "Min length: {0}", minLength.Length); + } + }, + { typeof(StringLengthAttribute), a => + { + StringLengthAttribute strLength = (StringLengthAttribute)a; + return String.Format(CultureInfo.CurrentCulture, "String length: inclusive between {0} and {1}", strLength.MinimumLength, strLength.MaximumLength); + } + }, + { typeof(DataTypeAttribute), a => + { + DataTypeAttribute dataType = (DataTypeAttribute)a; + return String.Format(CultureInfo.CurrentCulture, "Data type: {0}", dataType.CustomDataType ?? dataType.DataType.ToString()); + } + }, + { typeof(RegularExpressionAttribute), a => + { + RegularExpressionAttribute regularExpression = (RegularExpressionAttribute)a; + return String.Format(CultureInfo.CurrentCulture, "Matching regular expression pattern: {0}", regularExpression.Pattern); + } + }, + }; + + // Modify this to add more default documentations. + private readonly IDictionary DefaultTypeDocumentation = new Dictionary + { + { typeof(Int16), "integer" }, + { typeof(Int32), "integer" }, + { typeof(Int64), "integer" }, + { typeof(UInt16), "unsigned integer" }, + { typeof(UInt32), "unsigned integer" }, + { typeof(UInt64), "unsigned integer" }, + { typeof(Byte), "byte" }, + { typeof(Char), "character" }, + { typeof(SByte), "signed byte" }, + { typeof(Uri), "URI" }, + { typeof(Single), "decimal number" }, + { typeof(Double), "decimal number" }, + { typeof(Decimal), "decimal number" }, + { typeof(String), "string" }, + { typeof(Guid), "globally unique identifier" }, + { typeof(TimeSpan), "time interval" }, + { typeof(DateTime), "date" }, + { typeof(DateTimeOffset), "date" }, + { typeof(Boolean), "boolean" }, + }; + + private Lazy _documentationProvider; + + public ModelDescriptionGenerator(HttpConfiguration config) + { + if (config == null) + { + throw new ArgumentNullException("config"); + } + + _documentationProvider = new Lazy(() => config.Services.GetDocumentationProvider() as IModelDocumentationProvider); + GeneratedModels = new Dictionary(StringComparer.OrdinalIgnoreCase); + } + + public Dictionary GeneratedModels { get; private set; } + + private IModelDocumentationProvider DocumentationProvider + { + get + { + return _documentationProvider.Value; + } + } + + public ModelDescription GetOrCreateModelDescription(Type modelType) + { + if (modelType == null) + { + throw new ArgumentNullException("modelType"); + } + + Type underlyingType = Nullable.GetUnderlyingType(modelType); + if (underlyingType != null) + { + modelType = underlyingType; + } + + ModelDescription modelDescription; + string modelName = ModelNameHelper.GetModelName(modelType); + if (GeneratedModels.TryGetValue(modelName, out modelDescription)) + { + if (modelType != modelDescription.ModelType) + { + throw new InvalidOperationException( + String.Format( + CultureInfo.CurrentCulture, + "A model description could not be created. Duplicate model name '{0}' was found for types '{1}' and '{2}'. " + + "Use the [ModelName] attribute to change the model name for at least one of the types so that it has a unique name.", + modelName, + modelDescription.ModelType.FullName, + modelType.FullName)); + } + + return modelDescription; + } + + if (DefaultTypeDocumentation.ContainsKey(modelType)) + { + return GenerateSimpleTypeModelDescription(modelType); + } + + if (modelType.IsEnum) + { + return GenerateEnumTypeModelDescription(modelType); + } + + if (modelType.IsGenericType) + { + Type[] genericArguments = modelType.GetGenericArguments(); + + if (genericArguments.Length == 1) + { + Type enumerableType = typeof(IEnumerable<>).MakeGenericType(genericArguments); + if (enumerableType.IsAssignableFrom(modelType)) + { + return GenerateCollectionModelDescription(modelType, genericArguments[0]); + } + } + if (genericArguments.Length == 2) + { + Type dictionaryType = typeof(IDictionary<,>).MakeGenericType(genericArguments); + if (dictionaryType.IsAssignableFrom(modelType)) + { + return GenerateDictionaryModelDescription(modelType, genericArguments[0], genericArguments[1]); + } + + Type keyValuePairType = typeof(KeyValuePair<,>).MakeGenericType(genericArguments); + if (keyValuePairType.IsAssignableFrom(modelType)) + { + return GenerateKeyValuePairModelDescription(modelType, genericArguments[0], genericArguments[1]); + } + } + } + + if (modelType.IsArray) + { + Type elementType = modelType.GetElementType(); + return GenerateCollectionModelDescription(modelType, elementType); + } + + if (modelType == typeof(NameValueCollection)) + { + return GenerateDictionaryModelDescription(modelType, typeof(string), typeof(string)); + } + + if (typeof(IDictionary).IsAssignableFrom(modelType)) + { + return GenerateDictionaryModelDescription(modelType, typeof(object), typeof(object)); + } + + if (typeof(IEnumerable).IsAssignableFrom(modelType)) + { + return GenerateCollectionModelDescription(modelType, typeof(object)); + } + + return GenerateComplexTypeModelDescription(modelType); + } + + // Change this to provide different name for the member. + private static string GetMemberName(MemberInfo member, bool hasDataContractAttribute) + { + JsonPropertyAttribute jsonProperty = member.GetCustomAttribute(); + if (jsonProperty != null && !String.IsNullOrEmpty(jsonProperty.PropertyName)) + { + return jsonProperty.PropertyName; + } + + if (hasDataContractAttribute) + { + DataMemberAttribute dataMember = member.GetCustomAttribute(); + if (dataMember != null && !String.IsNullOrEmpty(dataMember.Name)) + { + return dataMember.Name; + } + } + + return member.Name; + } + + private static bool ShouldDisplayMember(MemberInfo member, bool hasDataContractAttribute) + { + JsonIgnoreAttribute jsonIgnore = member.GetCustomAttribute(); + XmlIgnoreAttribute xmlIgnore = member.GetCustomAttribute(); + IgnoreDataMemberAttribute ignoreDataMember = member.GetCustomAttribute(); + NonSerializedAttribute nonSerialized = member.GetCustomAttribute(); + ApiExplorerSettingsAttribute apiExplorerSetting = member.GetCustomAttribute(); + + bool hasMemberAttribute = member.DeclaringType.IsEnum ? + member.GetCustomAttribute() != null : + member.GetCustomAttribute() != null; + + // Display member only if all the followings are true: + // no JsonIgnoreAttribute + // no XmlIgnoreAttribute + // no IgnoreDataMemberAttribute + // no NonSerializedAttribute + // no ApiExplorerSettingsAttribute with IgnoreApi set to true + // no DataContractAttribute without DataMemberAttribute or EnumMemberAttribute + return jsonIgnore == null && + xmlIgnore == null && + ignoreDataMember == null && + nonSerialized == null && + (apiExplorerSetting == null || !apiExplorerSetting.IgnoreApi) && + (!hasDataContractAttribute || hasMemberAttribute); + } + + private string CreateDefaultDocumentation(Type type) + { + string documentation; + if (DefaultTypeDocumentation.TryGetValue(type, out documentation)) + { + return documentation; + } + if (DocumentationProvider != null) + { + documentation = DocumentationProvider.GetDocumentation(type); + } + + return documentation; + } + + private void GenerateAnnotations(MemberInfo property, ParameterDescription propertyModel) + { + List annotations = new List(); + + IEnumerable attributes = property.GetCustomAttributes(); + foreach (Attribute attribute in attributes) + { + Func textGenerator; + if (AnnotationTextGenerator.TryGetValue(attribute.GetType(), out textGenerator)) + { + annotations.Add( + new ParameterAnnotation + { + AnnotationAttribute = attribute, + Documentation = textGenerator(attribute) + }); + } + } + + // Rearrange the annotations + annotations.Sort((x, y) => + { + // Special-case RequiredAttribute so that it shows up on top + if (x.AnnotationAttribute is RequiredAttribute) + { + return -1; + } + if (y.AnnotationAttribute is RequiredAttribute) + { + return 1; + } + + // Sort the rest based on alphabetic order of the documentation + return String.Compare(x.Documentation, y.Documentation, StringComparison.OrdinalIgnoreCase); + }); + + foreach (ParameterAnnotation annotation in annotations) + { + propertyModel.Annotations.Add(annotation); + } + } + + private CollectionModelDescription GenerateCollectionModelDescription(Type modelType, Type elementType) + { + ModelDescription collectionModelDescription = GetOrCreateModelDescription(elementType); + if (collectionModelDescription != null) + { + return new CollectionModelDescription + { + Name = ModelNameHelper.GetModelName(modelType), + ModelType = modelType, + ElementDescription = collectionModelDescription + }; + } + + return null; + } + + private ModelDescription GenerateComplexTypeModelDescription(Type modelType) + { + ComplexTypeModelDescription complexModelDescription = new ComplexTypeModelDescription + { + Name = ModelNameHelper.GetModelName(modelType), + ModelType = modelType, + Documentation = CreateDefaultDocumentation(modelType) + }; + + GeneratedModels.Add(complexModelDescription.Name, complexModelDescription); + bool hasDataContractAttribute = modelType.GetCustomAttribute() != null; + PropertyInfo[] properties = modelType.GetProperties(BindingFlags.Public | BindingFlags.Instance); + foreach (PropertyInfo property in properties) + { + if (ShouldDisplayMember(property, hasDataContractAttribute)) + { + ParameterDescription propertyModel = new ParameterDescription + { + Name = GetMemberName(property, hasDataContractAttribute) + }; + + if (DocumentationProvider != null) + { + propertyModel.Documentation = DocumentationProvider.GetDocumentation(property); + } + + GenerateAnnotations(property, propertyModel); + complexModelDescription.Properties.Add(propertyModel); + propertyModel.TypeDescription = GetOrCreateModelDescription(property.PropertyType); + } + } + + FieldInfo[] fields = modelType.GetFields(BindingFlags.Public | BindingFlags.Instance); + foreach (FieldInfo field in fields) + { + if (ShouldDisplayMember(field, hasDataContractAttribute)) + { + ParameterDescription propertyModel = new ParameterDescription + { + Name = GetMemberName(field, hasDataContractAttribute) + }; + + if (DocumentationProvider != null) + { + propertyModel.Documentation = DocumentationProvider.GetDocumentation(field); + } + + complexModelDescription.Properties.Add(propertyModel); + propertyModel.TypeDescription = GetOrCreateModelDescription(field.FieldType); + } + } + + return complexModelDescription; + } + + private DictionaryModelDescription GenerateDictionaryModelDescription(Type modelType, Type keyType, Type valueType) + { + ModelDescription keyModelDescription = GetOrCreateModelDescription(keyType); + ModelDescription valueModelDescription = GetOrCreateModelDescription(valueType); + + return new DictionaryModelDescription + { + Name = ModelNameHelper.GetModelName(modelType), + ModelType = modelType, + KeyModelDescription = keyModelDescription, + ValueModelDescription = valueModelDescription + }; + } + + private EnumTypeModelDescription GenerateEnumTypeModelDescription(Type modelType) + { + EnumTypeModelDescription enumDescription = new EnumTypeModelDescription + { + Name = ModelNameHelper.GetModelName(modelType), + ModelType = modelType, + Documentation = CreateDefaultDocumentation(modelType) + }; + bool hasDataContractAttribute = modelType.GetCustomAttribute() != null; + foreach (FieldInfo field in modelType.GetFields(BindingFlags.Public | BindingFlags.Static)) + { + if (ShouldDisplayMember(field, hasDataContractAttribute)) + { + EnumValueDescription enumValue = new EnumValueDescription + { + Name = field.Name, + Value = field.GetRawConstantValue().ToString() + }; + if (DocumentationProvider != null) + { + enumValue.Documentation = DocumentationProvider.GetDocumentation(field); + } + enumDescription.Values.Add(enumValue); + } + } + GeneratedModels.Add(enumDescription.Name, enumDescription); + + return enumDescription; + } + + private KeyValuePairModelDescription GenerateKeyValuePairModelDescription(Type modelType, Type keyType, Type valueType) + { + ModelDescription keyModelDescription = GetOrCreateModelDescription(keyType); + ModelDescription valueModelDescription = GetOrCreateModelDescription(valueType); + + return new KeyValuePairModelDescription + { + Name = ModelNameHelper.GetModelName(modelType), + ModelType = modelType, + KeyModelDescription = keyModelDescription, + ValueModelDescription = valueModelDescription + }; + } + + private ModelDescription GenerateSimpleTypeModelDescription(Type modelType) + { + SimpleTypeModelDescription simpleModelDescription = new SimpleTypeModelDescription + { + Name = ModelNameHelper.GetModelName(modelType), + ModelType = modelType, + Documentation = CreateDefaultDocumentation(modelType) + }; + GeneratedModels.Add(simpleModelDescription.Name, simpleModelDescription); + + return simpleModelDescription; + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelNameAttribute.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelNameAttribute.cs.pp new file mode 100644 index 0000000..2faa8c7 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelNameAttribute.cs.pp @@ -0,0 +1,18 @@ +using System; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + /// + /// Use this attribute to change the name of the generated for a type. + /// + [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum, AllowMultiple = false, Inherited = false)] + public sealed class ModelNameAttribute : Attribute + { + public ModelNameAttribute(string name) + { + Name = name; + } + + public string Name { get; private set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelNameHelper.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelNameHelper.cs.pp new file mode 100644 index 0000000..17a6021 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ModelNameHelper.cs.pp @@ -0,0 +1,36 @@ +using System; +using System.Globalization; +using System.Linq; +using System.Reflection; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + internal static class ModelNameHelper + { + // Modify this to provide custom model name mapping. + public static string GetModelName(Type type) + { + ModelNameAttribute modelNameAttribute = type.GetCustomAttribute(); + if (modelNameAttribute != null && !String.IsNullOrEmpty(modelNameAttribute.Name)) + { + return modelNameAttribute.Name; + } + + string modelName = type.Name; + if (type.IsGenericType) + { + // Format the generic type name to something like: GenericOfAgurment1AndArgument2 + Type genericType = type.GetGenericTypeDefinition(); + Type[] genericArguments = type.GetGenericArguments(); + string genericTypeName = genericType.Name; + + // Trim the generic parameter counts from the name + genericTypeName = genericTypeName.Substring(0, genericTypeName.IndexOf('`')); + string[] argumentTypeNames = genericArguments.Select(t => GetModelName(t)).ToArray(); + modelName = String.Format(CultureInfo.InvariantCulture, "{0}Of{1}", genericTypeName, String.Join("And", argumentTypeNames)); + } + + return modelName; + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ParameterAnnotation.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ParameterAnnotation.cs.pp new file mode 100644 index 0000000..87572cc --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ParameterAnnotation.cs.pp @@ -0,0 +1,11 @@ +using System; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class ParameterAnnotation + { + public Attribute AnnotationAttribute { get; set; } + + public string Documentation { get; set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ParameterDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ParameterDescription.cs.pp new file mode 100644 index 0000000..891ef36 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/ParameterDescription.cs.pp @@ -0,0 +1,21 @@ +using System.Collections.Generic; +using System.Collections.ObjectModel; + +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class ParameterDescription + { + public ParameterDescription() + { + Annotations = new Collection(); + } + + public Collection Annotations { get; private set; } + + public string Documentation { get; set; } + + public string Name { get; set; } + + public ModelDescription TypeDescription { get; set; } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/SimpleTypeModelDescription.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/SimpleTypeModelDescription.cs.pp new file mode 100644 index 0000000..04238d2 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/ModelDescriptions/SimpleTypeModelDescription.cs.pp @@ -0,0 +1,6 @@ +namespace $rootnamespace$.Areas.HelpPage.ModelDescriptions +{ + public class SimpleTypeModelDescription : ModelDescription + { + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Models/HelpPageApiModel.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Models/HelpPageApiModel.cs.pp new file mode 100644 index 0000000..4656e64 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Models/HelpPageApiModel.cs.pp @@ -0,0 +1,108 @@ +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Net.Http.Headers; +using System.Web.Http.Description; +using $rootnamespace$.Areas.HelpPage.ModelDescriptions; + +namespace $rootnamespace$.Areas.HelpPage.Models +{ + /// + /// The model that represents an API displayed on the help page. + /// + public class HelpPageApiModel + { + /// + /// Initializes a new instance of the class. + /// + public HelpPageApiModel() + { + UriParameters = new Collection(); + SampleRequests = new Dictionary(); + SampleResponses = new Dictionary(); + ErrorMessages = new Collection(); + } + + /// + /// Gets or sets the that describes the API. + /// + public ApiDescription ApiDescription { get; set; } + + /// + /// Gets or sets the collection that describes the URI parameters for the API. + /// + public Collection UriParameters { get; private set; } + + /// + /// Gets or sets the documentation for the request. + /// + public string RequestDocumentation { get; set; } + + /// + /// Gets or sets the that describes the request body. + /// + public ModelDescription RequestModelDescription { get; set; } + + /// + /// Gets the request body parameter descriptions. + /// + public IList RequestBodyParameters + { + get + { + return GetParameterDescriptions(RequestModelDescription); + } + } + + /// + /// Gets or sets the that describes the resource. + /// + public ModelDescription ResourceDescription { get; set; } + + /// + /// Gets the resource property descriptions. + /// + public IList ResourceProperties + { + get + { + return GetParameterDescriptions(ResourceDescription); + } + } + + /// + /// Gets the sample requests associated with the API. + /// + public IDictionary SampleRequests { get; private set; } + + /// + /// Gets the sample responses associated with the API. + /// + public IDictionary SampleResponses { get; private set; } + + /// + /// Gets the error messages associated with this model. + /// + public Collection ErrorMessages { get; private set; } + + private static IList GetParameterDescriptions(ModelDescription modelDescription) + { + ComplexTypeModelDescription complexTypeModelDescription = modelDescription as ComplexTypeModelDescription; + if (complexTypeModelDescription != null) + { + return complexTypeModelDescription.Properties; + } + + CollectionModelDescription collectionModelDescription = modelDescription as CollectionModelDescription; + if (collectionModelDescription != null) + { + complexTypeModelDescription = collectionModelDescription.ElementDescription as ComplexTypeModelDescription; + if (complexTypeModelDescription != null) + { + return complexTypeModelDescription.Properties; + } + } + + return null; + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/HelpPageSampleGenerator.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/HelpPageSampleGenerator.cs.pp new file mode 100644 index 0000000..7615f52 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/HelpPageSampleGenerator.cs.pp @@ -0,0 +1,444 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.ComponentModel; +using System.Diagnostics.CodeAnalysis; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net.Http; +using System.Net.Http.Formatting; +using System.Net.Http.Headers; +using System.Web.Http.Description; +using System.Xml.Linq; +using Newtonsoft.Json; + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// This class will generate the samples for the help page. + /// + public class HelpPageSampleGenerator + { + /// + /// Initializes a new instance of the class. + /// + public HelpPageSampleGenerator() + { + ActualHttpMessageTypes = new Dictionary(); + ActionSamples = new Dictionary(); + SampleObjects = new Dictionary(); + SampleObjectFactories = new List> + { + DefaultSampleObjectFactory, + }; + } + + /// + /// Gets CLR types that are used as the content of or . + /// + public IDictionary ActualHttpMessageTypes { get; internal set; } + + /// + /// Gets the objects that are used directly as samples for certain actions. + /// + public IDictionary ActionSamples { get; internal set; } + + /// + /// Gets the objects that are serialized as samples by the supported formatters. + /// + public IDictionary SampleObjects { get; internal set; } + + /// + /// Gets factories for the objects that the supported formatters will serialize as samples. Processed in order, + /// stopping when the factory successfully returns a non- object. + /// + /// + /// Collection includes just initially. Use + /// SampleObjectFactories.Insert(0, func) to provide an override and + /// SampleObjectFactories.Add(func) to provide a fallback. + [SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures", + Justification = "This is an appropriate nesting of generic types")] + public IList> SampleObjectFactories { get; private set; } + + /// + /// Gets the request body samples for a given . + /// + /// The . + /// The samples keyed by media type. + public IDictionary GetSampleRequests(ApiDescription api) + { + return GetSample(api, SampleDirection.Request); + } + + /// + /// Gets the response body samples for a given . + /// + /// The . + /// The samples keyed by media type. + public IDictionary GetSampleResponses(ApiDescription api) + { + return GetSample(api, SampleDirection.Response); + } + + /// + /// Gets the request or response body samples. + /// + /// The . + /// The value indicating whether the sample is for a request or for a response. + /// The samples keyed by media type. + public virtual IDictionary GetSample(ApiDescription api, SampleDirection sampleDirection) + { + if (api == null) + { + throw new ArgumentNullException("api"); + } + string controllerName = api.ActionDescriptor.ControllerDescriptor.ControllerName; + string actionName = api.ActionDescriptor.ActionName; + IEnumerable parameterNames = api.ParameterDescriptions.Select(p => p.Name); + Collection formatters; + Type type = ResolveType(api, controllerName, actionName, parameterNames, sampleDirection, out formatters); + var samples = new Dictionary(); + + // Use the samples provided directly for actions + var actionSamples = GetAllActionSamples(controllerName, actionName, parameterNames, sampleDirection); + foreach (var actionSample in actionSamples) + { + samples.Add(actionSample.Key.MediaType, WrapSampleIfString(actionSample.Value)); + } + + // Do the sample generation based on formatters only if an action doesn't return an HttpResponseMessage. + // Here we cannot rely on formatters because we don't know what's in the HttpResponseMessage, it might not even use formatters. + if (type != null && !typeof(HttpResponseMessage).IsAssignableFrom(type)) + { + object sampleObject = GetSampleObject(type); + foreach (var formatter in formatters) + { + foreach (MediaTypeHeaderValue mediaType in formatter.SupportedMediaTypes) + { + if (!samples.ContainsKey(mediaType)) + { + object sample = GetActionSample(controllerName, actionName, parameterNames, type, formatter, mediaType, sampleDirection); + + // If no sample found, try generate sample using formatter and sample object + if (sample == null && sampleObject != null) + { + sample = WriteSampleObjectUsingFormatter(formatter, sampleObject, type, mediaType); + } + + samples.Add(mediaType, WrapSampleIfString(sample)); + } + } + } + } + + return samples; + } + + /// + /// Search for samples that are provided directly through . + /// + /// Name of the controller. + /// Name of the action. + /// The parameter names. + /// The CLR type. + /// The formatter. + /// The media type. + /// The value indicating whether the sample is for a request or for a response. + /// The sample that matches the parameters. + public virtual object GetActionSample(string controllerName, string actionName, IEnumerable parameterNames, Type type, MediaTypeFormatter formatter, MediaTypeHeaderValue mediaType, SampleDirection sampleDirection) + { + object sample; + + // First, try to get the sample provided for the specified mediaType, sampleDirection, controllerName, actionName and parameterNames. + // If not found, try to get the sample provided for the specified mediaType, sampleDirection, controllerName and actionName regardless of the parameterNames. + // If still not found, try to get the sample provided for the specified mediaType and type. + // Finally, try to get the sample provided for the specified mediaType. + if (ActionSamples.TryGetValue(new HelpPageSampleKey(mediaType, sampleDirection, controllerName, actionName, parameterNames), out sample) || + ActionSamples.TryGetValue(new HelpPageSampleKey(mediaType, sampleDirection, controllerName, actionName, new[] { "*" }), out sample) || + ActionSamples.TryGetValue(new HelpPageSampleKey(mediaType, type), out sample) || + ActionSamples.TryGetValue(new HelpPageSampleKey(mediaType), out sample)) + { + return sample; + } + + return null; + } + + /// + /// Gets the sample object that will be serialized by the formatters. + /// First, it will look at the . If no sample object is found, it will try to create + /// one using (which wraps an ) and other + /// factories in . + /// + /// The type. + /// The sample object. + [SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", + Justification = "Even if all items in SampleObjectFactories throw, problem will be visible as missing sample.")] + public virtual object GetSampleObject(Type type) + { + object sampleObject; + + if (!SampleObjects.TryGetValue(type, out sampleObject)) + { + // No specific object available, try our factories. + foreach (Func factory in SampleObjectFactories) + { + if (factory == null) + { + continue; + } + + try + { + sampleObject = factory(this, type); + if (sampleObject != null) + { + break; + } + } + catch + { + // Ignore any problems encountered in the factory; go on to the next one (if any). + } + } + } + + return sampleObject; + } + + /// + /// Resolves the actual type of passed to the in an action. + /// + /// The . + /// The type. + public virtual Type ResolveHttpRequestMessageType(ApiDescription api) + { + string controllerName = api.ActionDescriptor.ControllerDescriptor.ControllerName; + string actionName = api.ActionDescriptor.ActionName; + IEnumerable parameterNames = api.ParameterDescriptions.Select(p => p.Name); + Collection formatters; + return ResolveType(api, controllerName, actionName, parameterNames, SampleDirection.Request, out formatters); + } + + /// + /// Resolves the type of the action parameter or return value when or is used. + /// + /// The . + /// Name of the controller. + /// Name of the action. + /// The parameter names. + /// The value indicating whether the sample is for a request or a response. + /// The formatters. + [SuppressMessage("Microsoft.Design", "CA1021:AvoidOutParameters", Justification = "This is only used in advanced scenarios.")] + public virtual Type ResolveType(ApiDescription api, string controllerName, string actionName, IEnumerable parameterNames, SampleDirection sampleDirection, out Collection formatters) + { + if (!Enum.IsDefined(typeof(SampleDirection), sampleDirection)) + { + throw new InvalidEnumArgumentException("sampleDirection", (int)sampleDirection, typeof(SampleDirection)); + } + if (api == null) + { + throw new ArgumentNullException("api"); + } + Type type; + if (ActualHttpMessageTypes.TryGetValue(new HelpPageSampleKey(sampleDirection, controllerName, actionName, parameterNames), out type) || + ActualHttpMessageTypes.TryGetValue(new HelpPageSampleKey(sampleDirection, controllerName, actionName, new[] { "*" }), out type)) + { + // Re-compute the supported formatters based on type + Collection newFormatters = new Collection(); + foreach (var formatter in api.ActionDescriptor.Configuration.Formatters) + { + if (IsFormatSupported(sampleDirection, formatter, type)) + { + newFormatters.Add(formatter); + } + } + formatters = newFormatters; + } + else + { + switch (sampleDirection) + { + case SampleDirection.Request: + ApiParameterDescription requestBodyParameter = api.ParameterDescriptions.FirstOrDefault(p => p.Source == ApiParameterSource.FromBody); + type = requestBodyParameter == null ? null : requestBodyParameter.ParameterDescriptor.ParameterType; + formatters = api.SupportedRequestBodyFormatters; + break; + case SampleDirection.Response: + default: + type = api.ResponseDescription.ResponseType ?? api.ResponseDescription.DeclaredType; + formatters = api.SupportedResponseFormatters; + break; + } + } + + return type; + } + + /// + /// Writes the sample object using formatter. + /// + /// The formatter. + /// The value. + /// The type. + /// Type of the media. + /// + [SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", Justification = "The exception is recorded as InvalidSample.")] + public virtual object WriteSampleObjectUsingFormatter(MediaTypeFormatter formatter, object value, Type type, MediaTypeHeaderValue mediaType) + { + if (formatter == null) + { + throw new ArgumentNullException("formatter"); + } + if (mediaType == null) + { + throw new ArgumentNullException("mediaType"); + } + + object sample = String.Empty; + MemoryStream ms = null; + HttpContent content = null; + try + { + if (formatter.CanWriteType(type)) + { + ms = new MemoryStream(); + content = new ObjectContent(type, value, formatter, mediaType); + formatter.WriteToStreamAsync(type, value, ms, content, null).Wait(); + ms.Position = 0; + StreamReader reader = new StreamReader(ms); + string serializedSampleString = reader.ReadToEnd(); + if (mediaType.MediaType.ToUpperInvariant().Contains("XML")) + { + serializedSampleString = TryFormatXml(serializedSampleString); + } + else if (mediaType.MediaType.ToUpperInvariant().Contains("JSON")) + { + serializedSampleString = TryFormatJson(serializedSampleString); + } + + sample = new TextSample(serializedSampleString); + } + else + { + sample = new InvalidSample(String.Format( + CultureInfo.CurrentCulture, + "Failed to generate the sample for media type '{0}'. Cannot use formatter '{1}' to write type '{2}'.", + mediaType, + formatter.GetType().Name, + type.Name)); + } + } + catch (Exception e) + { + sample = new InvalidSample(String.Format( + CultureInfo.CurrentCulture, + "An exception has occurred while using the formatter '{0}' to generate sample for media type '{1}'. Exception message: {2}", + formatter.GetType().Name, + mediaType.MediaType, + UnwrapException(e).Message)); + } + finally + { + if (ms != null) + { + ms.Dispose(); + } + if (content != null) + { + content.Dispose(); + } + } + + return sample; + } + + internal static Exception UnwrapException(Exception exception) + { + AggregateException aggregateException = exception as AggregateException; + if (aggregateException != null) + { + return aggregateException.Flatten().InnerException; + } + return exception; + } + + // Default factory for sample objects + private static object DefaultSampleObjectFactory(HelpPageSampleGenerator sampleGenerator, Type type) + { + // Try to create a default sample object + ObjectGenerator objectGenerator = new ObjectGenerator(); + return objectGenerator.GenerateObject(type); + } + + [SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", Justification = "Handling the failure by returning the original string.")] + private static string TryFormatJson(string str) + { + try + { + object parsedJson = JsonConvert.DeserializeObject(str); + return JsonConvert.SerializeObject(parsedJson, Formatting.Indented); + } + catch + { + // can't parse JSON, return the original string + return str; + } + } + + [SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", Justification = "Handling the failure by returning the original string.")] + private static string TryFormatXml(string str) + { + try + { + XDocument xml = XDocument.Parse(str); + return xml.ToString(); + } + catch + { + // can't parse XML, return the original string + return str; + } + } + + private static bool IsFormatSupported(SampleDirection sampleDirection, MediaTypeFormatter formatter, Type type) + { + switch (sampleDirection) + { + case SampleDirection.Request: + return formatter.CanReadType(type); + case SampleDirection.Response: + return formatter.CanWriteType(type); + } + return false; + } + + private IEnumerable> GetAllActionSamples(string controllerName, string actionName, IEnumerable parameterNames, SampleDirection sampleDirection) + { + HashSet parameterNamesSet = new HashSet(parameterNames, StringComparer.OrdinalIgnoreCase); + foreach (var sample in ActionSamples) + { + HelpPageSampleKey sampleKey = sample.Key; + if (String.Equals(controllerName, sampleKey.ControllerName, StringComparison.OrdinalIgnoreCase) && + String.Equals(actionName, sampleKey.ActionName, StringComparison.OrdinalIgnoreCase) && + (sampleKey.ParameterNames.SetEquals(new[] { "*" }) || parameterNamesSet.SetEquals(sampleKey.ParameterNames)) && + sampleDirection == sampleKey.SampleDirection) + { + yield return sample; + } + } + } + + private static object WrapSampleIfString(object sample) + { + string stringSample = sample as string; + if (stringSample != null) + { + return new TextSample(stringSample); + } + + return sample; + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/HelpPageSampleKey.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/HelpPageSampleKey.cs.pp new file mode 100644 index 0000000..912bea3 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/HelpPageSampleKey.cs.pp @@ -0,0 +1,172 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Net.Http.Headers; + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// This is used to identify the place where the sample should be applied. + /// + public class HelpPageSampleKey + { + /// + /// Creates a new based on media type. + /// + /// The media type. + public HelpPageSampleKey(MediaTypeHeaderValue mediaType) + { + if (mediaType == null) + { + throw new ArgumentNullException("mediaType"); + } + + ActionName = String.Empty; + ControllerName = String.Empty; + MediaType = mediaType; + ParameterNames = new HashSet(StringComparer.OrdinalIgnoreCase); + } + + /// + /// Creates a new based on media type and CLR type. + /// + /// The media type. + /// The CLR type. + public HelpPageSampleKey(MediaTypeHeaderValue mediaType, Type type) + : this(mediaType) + { + if (type == null) + { + throw new ArgumentNullException("type"); + } + + ParameterType = type; + } + + /// + /// Creates a new based on , controller name, action name and parameter names. + /// + /// The . + /// Name of the controller. + /// Name of the action. + /// The parameter names. + public HelpPageSampleKey(SampleDirection sampleDirection, string controllerName, string actionName, IEnumerable parameterNames) + { + if (!Enum.IsDefined(typeof(SampleDirection), sampleDirection)) + { + throw new InvalidEnumArgumentException("sampleDirection", (int)sampleDirection, typeof(SampleDirection)); + } + if (controllerName == null) + { + throw new ArgumentNullException("controllerName"); + } + if (actionName == null) + { + throw new ArgumentNullException("actionName"); + } + if (parameterNames == null) + { + throw new ArgumentNullException("parameterNames"); + } + + ControllerName = controllerName; + ActionName = actionName; + ParameterNames = new HashSet(parameterNames, StringComparer.OrdinalIgnoreCase); + SampleDirection = sampleDirection; + } + + /// + /// Creates a new based on media type, , controller name, action name and parameter names. + /// + /// The media type. + /// The . + /// Name of the controller. + /// Name of the action. + /// The parameter names. + public HelpPageSampleKey(MediaTypeHeaderValue mediaType, SampleDirection sampleDirection, string controllerName, string actionName, IEnumerable parameterNames) + : this(sampleDirection, controllerName, actionName, parameterNames) + { + if (mediaType == null) + { + throw new ArgumentNullException("mediaType"); + } + + MediaType = mediaType; + } + + /// + /// Gets the name of the controller. + /// + /// + /// The name of the controller. + /// + public string ControllerName { get; private set; } + + /// + /// Gets the name of the action. + /// + /// + /// The name of the action. + /// + public string ActionName { get; private set; } + + /// + /// Gets the media type. + /// + /// + /// The media type. + /// + public MediaTypeHeaderValue MediaType { get; private set; } + + /// + /// Gets the parameter names. + /// + public HashSet ParameterNames { get; private set; } + + public Type ParameterType { get; private set; } + + /// + /// Gets the . + /// + public SampleDirection? SampleDirection { get; private set; } + + public override bool Equals(object obj) + { + HelpPageSampleKey otherKey = obj as HelpPageSampleKey; + if (otherKey == null) + { + return false; + } + + return String.Equals(ControllerName, otherKey.ControllerName, StringComparison.OrdinalIgnoreCase) && + String.Equals(ActionName, otherKey.ActionName, StringComparison.OrdinalIgnoreCase) && + (MediaType == otherKey.MediaType || (MediaType != null && MediaType.Equals(otherKey.MediaType))) && + ParameterType == otherKey.ParameterType && + SampleDirection == otherKey.SampleDirection && + ParameterNames.SetEquals(otherKey.ParameterNames); + } + + public override int GetHashCode() + { + int hashCode = ControllerName.ToUpperInvariant().GetHashCode() ^ ActionName.ToUpperInvariant().GetHashCode(); + if (MediaType != null) + { + hashCode ^= MediaType.GetHashCode(); + } + if (SampleDirection != null) + { + hashCode ^= SampleDirection.GetHashCode(); + } + if (ParameterType != null) + { + hashCode ^= ParameterType.GetHashCode(); + } + foreach (string parameterName in ParameterNames) + { + hashCode ^= parameterName.ToUpperInvariant().GetHashCode(); + } + + return hashCode; + } + } +} diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/ImageSample.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/ImageSample.cs.pp new file mode 100644 index 0000000..a82f4a5 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/ImageSample.cs.pp @@ -0,0 +1,41 @@ +using System; + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// This represents an image sample on the help page. There's a display template named ImageSample associated with this class. + /// + public class ImageSample + { + /// + /// Initializes a new instance of the class. + /// + /// The URL of an image. + public ImageSample(string src) + { + if (src == null) + { + throw new ArgumentNullException("src"); + } + Src = src; + } + + public string Src { get; private set; } + + public override bool Equals(object obj) + { + ImageSample other = obj as ImageSample; + return other != null && Src == other.Src; + } + + public override int GetHashCode() + { + return Src.GetHashCode(); + } + + public override string ToString() + { + return Src; + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/InvalidSample.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/InvalidSample.cs.pp new file mode 100644 index 0000000..782a76f --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/InvalidSample.cs.pp @@ -0,0 +1,37 @@ +using System; + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// This represents an invalid sample on the help page. There's a display template named InvalidSample associated with this class. + /// + public class InvalidSample + { + public InvalidSample(string errorMessage) + { + if (errorMessage == null) + { + throw new ArgumentNullException("errorMessage"); + } + ErrorMessage = errorMessage; + } + + public string ErrorMessage { get; private set; } + + public override bool Equals(object obj) + { + InvalidSample other = obj as InvalidSample; + return other != null && ErrorMessage == other.ErrorMessage; + } + + public override int GetHashCode() + { + return ErrorMessage.GetHashCode(); + } + + public override string ToString() + { + return ErrorMessage; + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/ObjectGenerator.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/ObjectGenerator.cs.pp new file mode 100644 index 0000000..e040cd8 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/ObjectGenerator.cs.pp @@ -0,0 +1,456 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; +using System.Globalization; +using System.Linq; +using System.Reflection; + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// This class will create an object of a given type and populate it with sample data. + /// + public class ObjectGenerator + { + internal const int DefaultCollectionSize = 2; + private readonly SimpleTypeObjectGenerator SimpleObjectGenerator = new SimpleTypeObjectGenerator(); + + /// + /// Generates an object for a given type. The type needs to be public, have a public default constructor and settable public properties/fields. Currently it supports the following types: + /// Simple types: , , , , , etc. + /// Complex types: POCO types. + /// Nullables: . + /// Arrays: arrays of simple types or complex types. + /// Key value pairs: + /// Tuples: , , etc + /// Dictionaries: or anything deriving from . + /// Collections: , , , , , or anything deriving from or . + /// Queryables: , . + /// + /// The type. + /// An object of the given type. + public object GenerateObject(Type type) + { + return GenerateObject(type, new Dictionary()); + } + + [SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", Justification = "Here we just want to return null if anything goes wrong.")] + private object GenerateObject(Type type, Dictionary createdObjectReferences) + { + try + { + if (SimpleTypeObjectGenerator.CanGenerateObject(type)) + { + return SimpleObjectGenerator.GenerateObject(type); + } + + if (type.IsArray) + { + return GenerateArray(type, DefaultCollectionSize, createdObjectReferences); + } + + if (type.IsGenericType) + { + return GenerateGenericType(type, DefaultCollectionSize, createdObjectReferences); + } + + if (type == typeof(IDictionary)) + { + return GenerateDictionary(typeof(Hashtable), DefaultCollectionSize, createdObjectReferences); + } + + if (typeof(IDictionary).IsAssignableFrom(type)) + { + return GenerateDictionary(type, DefaultCollectionSize, createdObjectReferences); + } + + if (type == typeof(IList) || + type == typeof(IEnumerable) || + type == typeof(ICollection)) + { + return GenerateCollection(typeof(ArrayList), DefaultCollectionSize, createdObjectReferences); + } + + if (typeof(IList).IsAssignableFrom(type)) + { + return GenerateCollection(type, DefaultCollectionSize, createdObjectReferences); + } + + if (type == typeof(IQueryable)) + { + return GenerateQueryable(type, DefaultCollectionSize, createdObjectReferences); + } + + if (type.IsEnum) + { + return GenerateEnum(type); + } + + if (type.IsPublic || type.IsNestedPublic) + { + return GenerateComplexObject(type, createdObjectReferences); + } + } + catch + { + // Returns null if anything fails + return null; + } + + return null; + } + + private static object GenerateGenericType(Type type, int collectionSize, Dictionary createdObjectReferences) + { + Type genericTypeDefinition = type.GetGenericTypeDefinition(); + if (genericTypeDefinition == typeof(Nullable<>)) + { + return GenerateNullable(type, createdObjectReferences); + } + + if (genericTypeDefinition == typeof(KeyValuePair<,>)) + { + return GenerateKeyValuePair(type, createdObjectReferences); + } + + if (IsTuple(genericTypeDefinition)) + { + return GenerateTuple(type, createdObjectReferences); + } + + Type[] genericArguments = type.GetGenericArguments(); + if (genericArguments.Length == 1) + { + if (genericTypeDefinition == typeof(IList<>) || + genericTypeDefinition == typeof(IEnumerable<>) || + genericTypeDefinition == typeof(ICollection<>)) + { + Type collectionType = typeof(List<>).MakeGenericType(genericArguments); + return GenerateCollection(collectionType, collectionSize, createdObjectReferences); + } + + if (genericTypeDefinition == typeof(IQueryable<>)) + { + return GenerateQueryable(type, collectionSize, createdObjectReferences); + } + + Type closedCollectionType = typeof(ICollection<>).MakeGenericType(genericArguments[0]); + if (closedCollectionType.IsAssignableFrom(type)) + { + return GenerateCollection(type, collectionSize, createdObjectReferences); + } + } + + if (genericArguments.Length == 2) + { + if (genericTypeDefinition == typeof(IDictionary<,>)) + { + Type dictionaryType = typeof(Dictionary<,>).MakeGenericType(genericArguments); + return GenerateDictionary(dictionaryType, collectionSize, createdObjectReferences); + } + + Type closedDictionaryType = typeof(IDictionary<,>).MakeGenericType(genericArguments[0], genericArguments[1]); + if (closedDictionaryType.IsAssignableFrom(type)) + { + return GenerateDictionary(type, collectionSize, createdObjectReferences); + } + } + + if (type.IsPublic || type.IsNestedPublic) + { + return GenerateComplexObject(type, createdObjectReferences); + } + + return null; + } + + private static object GenerateTuple(Type type, Dictionary createdObjectReferences) + { + Type[] genericArgs = type.GetGenericArguments(); + object[] parameterValues = new object[genericArgs.Length]; + bool failedToCreateTuple = true; + ObjectGenerator objectGenerator = new ObjectGenerator(); + for (int i = 0; i < genericArgs.Length; i++) + { + parameterValues[i] = objectGenerator.GenerateObject(genericArgs[i], createdObjectReferences); + failedToCreateTuple &= parameterValues[i] == null; + } + if (failedToCreateTuple) + { + return null; + } + object result = Activator.CreateInstance(type, parameterValues); + return result; + } + + private static bool IsTuple(Type genericTypeDefinition) + { + return genericTypeDefinition == typeof(Tuple<>) || + genericTypeDefinition == typeof(Tuple<,>) || + genericTypeDefinition == typeof(Tuple<,,>) || + genericTypeDefinition == typeof(Tuple<,,,>) || + genericTypeDefinition == typeof(Tuple<,,,,>) || + genericTypeDefinition == typeof(Tuple<,,,,,>) || + genericTypeDefinition == typeof(Tuple<,,,,,,>) || + genericTypeDefinition == typeof(Tuple<,,,,,,,>); + } + + private static object GenerateKeyValuePair(Type keyValuePairType, Dictionary createdObjectReferences) + { + Type[] genericArgs = keyValuePairType.GetGenericArguments(); + Type typeK = genericArgs[0]; + Type typeV = genericArgs[1]; + ObjectGenerator objectGenerator = new ObjectGenerator(); + object keyObject = objectGenerator.GenerateObject(typeK, createdObjectReferences); + object valueObject = objectGenerator.GenerateObject(typeV, createdObjectReferences); + if (keyObject == null && valueObject == null) + { + // Failed to create key and values + return null; + } + object result = Activator.CreateInstance(keyValuePairType, keyObject, valueObject); + return result; + } + + private static object GenerateArray(Type arrayType, int size, Dictionary createdObjectReferences) + { + Type type = arrayType.GetElementType(); + Array result = Array.CreateInstance(type, size); + bool areAllElementsNull = true; + ObjectGenerator objectGenerator = new ObjectGenerator(); + for (int i = 0; i < size; i++) + { + object element = objectGenerator.GenerateObject(type, createdObjectReferences); + result.SetValue(element, i); + areAllElementsNull &= element == null; + } + + if (areAllElementsNull) + { + return null; + } + + return result; + } + + private static object GenerateDictionary(Type dictionaryType, int size, Dictionary createdObjectReferences) + { + Type typeK = typeof(object); + Type typeV = typeof(object); + if (dictionaryType.IsGenericType) + { + Type[] genericArgs = dictionaryType.GetGenericArguments(); + typeK = genericArgs[0]; + typeV = genericArgs[1]; + } + + object result = Activator.CreateInstance(dictionaryType); + MethodInfo addMethod = dictionaryType.GetMethod("Add") ?? dictionaryType.GetMethod("TryAdd"); + MethodInfo containsMethod = dictionaryType.GetMethod("Contains") ?? dictionaryType.GetMethod("ContainsKey"); + ObjectGenerator objectGenerator = new ObjectGenerator(); + for (int i = 0; i < size; i++) + { + object newKey = objectGenerator.GenerateObject(typeK, createdObjectReferences); + if (newKey == null) + { + // Cannot generate a valid key + return null; + } + + bool containsKey = (bool)containsMethod.Invoke(result, new object[] { newKey }); + if (!containsKey) + { + object newValue = objectGenerator.GenerateObject(typeV, createdObjectReferences); + addMethod.Invoke(result, new object[] { newKey, newValue }); + } + } + + return result; + } + + private static object GenerateEnum(Type enumType) + { + Array possibleValues = Enum.GetValues(enumType); + if (possibleValues.Length > 0) + { + return possibleValues.GetValue(0); + } + return null; + } + + private static object GenerateQueryable(Type queryableType, int size, Dictionary createdObjectReferences) + { + bool isGeneric = queryableType.IsGenericType; + object list; + if (isGeneric) + { + Type listType = typeof(List<>).MakeGenericType(queryableType.GetGenericArguments()); + list = GenerateCollection(listType, size, createdObjectReferences); + } + else + { + list = GenerateArray(typeof(object[]), size, createdObjectReferences); + } + if (list == null) + { + return null; + } + if (isGeneric) + { + Type argumentType = typeof(IEnumerable<>).MakeGenericType(queryableType.GetGenericArguments()); + MethodInfo asQueryableMethod = typeof(Queryable).GetMethod("AsQueryable", new[] { argumentType }); + return asQueryableMethod.Invoke(null, new[] { list }); + } + + return Queryable.AsQueryable((IEnumerable)list); + } + + private static object GenerateCollection(Type collectionType, int size, Dictionary createdObjectReferences) + { + Type type = collectionType.IsGenericType ? + collectionType.GetGenericArguments()[0] : + typeof(object); + object result = Activator.CreateInstance(collectionType); + MethodInfo addMethod = collectionType.GetMethod("Add"); + bool areAllElementsNull = true; + ObjectGenerator objectGenerator = new ObjectGenerator(); + for (int i = 0; i < size; i++) + { + object element = objectGenerator.GenerateObject(type, createdObjectReferences); + addMethod.Invoke(result, new object[] { element }); + areAllElementsNull &= element == null; + } + + if (areAllElementsNull) + { + return null; + } + + return result; + } + + private static object GenerateNullable(Type nullableType, Dictionary createdObjectReferences) + { + Type type = nullableType.GetGenericArguments()[0]; + ObjectGenerator objectGenerator = new ObjectGenerator(); + return objectGenerator.GenerateObject(type, createdObjectReferences); + } + + private static object GenerateComplexObject(Type type, Dictionary createdObjectReferences) + { + object result = null; + + if (createdObjectReferences.TryGetValue(type, out result)) + { + // The object has been created already, just return it. This will handle the circular reference case. + return result; + } + + if (type.IsValueType) + { + result = Activator.CreateInstance(type); + } + else + { + ConstructorInfo defaultCtor = type.GetConstructor(Type.EmptyTypes); + if (defaultCtor == null) + { + // Cannot instantiate the type because it doesn't have a default constructor + return null; + } + + result = defaultCtor.Invoke(new object[0]); + } + createdObjectReferences.Add(type, result); + SetPublicProperties(type, result, createdObjectReferences); + SetPublicFields(type, result, createdObjectReferences); + return result; + } + + private static void SetPublicProperties(Type type, object obj, Dictionary createdObjectReferences) + { + PropertyInfo[] properties = type.GetProperties(BindingFlags.Public | BindingFlags.Instance); + ObjectGenerator objectGenerator = new ObjectGenerator(); + foreach (PropertyInfo property in properties) + { + if (property.CanWrite) + { + object propertyValue = objectGenerator.GenerateObject(property.PropertyType, createdObjectReferences); + property.SetValue(obj, propertyValue, null); + } + } + } + + private static void SetPublicFields(Type type, object obj, Dictionary createdObjectReferences) + { + FieldInfo[] fields = type.GetFields(BindingFlags.Public | BindingFlags.Instance); + ObjectGenerator objectGenerator = new ObjectGenerator(); + foreach (FieldInfo field in fields) + { + object fieldValue = objectGenerator.GenerateObject(field.FieldType, createdObjectReferences); + field.SetValue(obj, fieldValue); + } + } + + private class SimpleTypeObjectGenerator + { + private long _index = 0; + private static readonly Dictionary> DefaultGenerators = InitializeGenerators(); + + [SuppressMessage("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity", Justification = "These are simple type factories and cannot be split up.")] + private static Dictionary> InitializeGenerators() + { + return new Dictionary> + { + { typeof(Boolean), index => true }, + { typeof(Byte), index => (Byte)64 }, + { typeof(Char), index => (Char)65 }, + { typeof(DateTime), index => DateTime.Now }, + { typeof(DateTimeOffset), index => new DateTimeOffset(DateTime.Now) }, + { typeof(DBNull), index => DBNull.Value }, + { typeof(Decimal), index => (Decimal)index }, + { typeof(Double), index => (Double)(index + 0.1) }, + { typeof(Guid), index => Guid.NewGuid() }, + { typeof(Int16), index => (Int16)(index % Int16.MaxValue) }, + { typeof(Int32), index => (Int32)(index % Int32.MaxValue) }, + { typeof(Int64), index => (Int64)index }, + { typeof(Object), index => new object() }, + { typeof(SByte), index => (SByte)64 }, + { typeof(Single), index => (Single)(index + 0.1) }, + { + typeof(String), index => + { + return String.Format(CultureInfo.CurrentCulture, "sample string {0}", index); + } + }, + { + typeof(TimeSpan), index => + { + return TimeSpan.FromTicks(1234567); + } + }, + { typeof(UInt16), index => (UInt16)(index % UInt16.MaxValue) }, + { typeof(UInt32), index => (UInt32)(index % UInt32.MaxValue) }, + { typeof(UInt64), index => (UInt64)index }, + { + typeof(Uri), index => + { + return new Uri(String.Format(CultureInfo.CurrentCulture, "http://webapihelppage{0}.com", index)); + } + }, + }; + } + + public static bool CanGenerateObject(Type type) + { + return DefaultGenerators.ContainsKey(type); + } + + public object GenerateObject(Type type) + { + return DefaultGenerators[type](++_index); + } + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/SampleDirection.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/SampleDirection.cs.pp new file mode 100644 index 0000000..03a53c5 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/SampleDirection.cs.pp @@ -0,0 +1,11 @@ +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// Indicates whether the sample is used for request or response + /// + public enum SampleDirection + { + Request = 0, + Response + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/TextSample.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/TextSample.cs.pp new file mode 100644 index 0000000..1323aa1 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/SampleGeneration/TextSample.cs.pp @@ -0,0 +1,37 @@ +using System; + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// This represents a preformatted text sample on the help page. There's a display template named TextSample associated with this class. + /// + public class TextSample + { + public TextSample(string text) + { + if (text == null) + { + throw new ArgumentNullException("text"); + } + Text = text; + } + + public string Text { get; private set; } + + public override bool Equals(object obj) + { + TextSample other = obj as TextSample; + return other != null && Text == other.Text; + } + + public override int GetHashCode() + { + return Text.GetHashCode(); + } + + public override string ToString() + { + return Text; + } + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/Api.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/Api.cshtml.pp new file mode 100644 index 0000000..4b849b9 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/Api.cshtml.pp @@ -0,0 +1,22 @@ +@using System.Web.Http +@using $rootnamespace$.Areas.HelpPage.Models +@model HelpPageApiModel + +@{ + var description = Model.ApiDescription; + ViewBag.Title = description.HttpMethod.Method + " " + description.RelativePath; +} + + +
+ +
+ @Html.DisplayForModel() +
+
diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ApiGroup.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ApiGroup.cshtml.pp new file mode 100644 index 0000000..80d36f4 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ApiGroup.cshtml.pp @@ -0,0 +1,41 @@ +@using System.Web.Http +@using System.Web.Http.Controllers +@using System.Web.Http.Description +@using $rootnamespace$.Areas.HelpPage +@using $rootnamespace$.Areas.HelpPage.Models +@model IGrouping + +@{ + var controllerDocumentation = ViewBag.DocumentationProvider != null ? + ViewBag.DocumentationProvider.GetDocumentation(Model.Key) : + null; +} + +

@Model.Key.ControllerName

+@if (!String.IsNullOrEmpty(controllerDocumentation)) +{ +

@controllerDocumentation

+} + + + + + + @foreach (var api in Model) + { + + + + + } + +
APIDescription
@api.HttpMethod.Method @api.RelativePath + @if (api.Documentation != null) + { +

@api.Documentation

+ } + else + { +

No documentation available.

+ } +
\ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/CollectionModelDescription.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/CollectionModelDescription.cshtml.pp new file mode 100644 index 0000000..afa0daf --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/CollectionModelDescription.cshtml.pp @@ -0,0 +1,6 @@ +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model CollectionModelDescription +@if (Model.ElementDescription is ComplexTypeModelDescription) +{ + @Html.DisplayFor(m => m.ElementDescription) +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ComplexTypeModelDescription.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ComplexTypeModelDescription.cshtml.pp new file mode 100644 index 0000000..0d2af73 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ComplexTypeModelDescription.cshtml.pp @@ -0,0 +1,3 @@ +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model ComplexTypeModelDescription +@Html.DisplayFor(m => m.Properties, "Parameters") \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/DictionaryModelDescription.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/DictionaryModelDescription.cshtml.pp new file mode 100644 index 0000000..166101b --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/DictionaryModelDescription.cshtml.pp @@ -0,0 +1,4 @@ +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model DictionaryModelDescription +Dictionary of @Html.DisplayFor(m => Model.KeyModelDescription.ModelType, "ModelDescriptionLink", new { modelDescription = Model.KeyModelDescription }) [key] +and @Html.DisplayFor(m => Model.ValueModelDescription.ModelType, "ModelDescriptionLink", new { modelDescription = Model.ValueModelDescription }) [value] \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/EnumTypeModelDescription.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/EnumTypeModelDescription.cshtml.pp new file mode 100644 index 0000000..3817b5d --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/EnumTypeModelDescription.cshtml.pp @@ -0,0 +1,24 @@ +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model EnumTypeModelDescription + +

Possible enumeration values:

+ + + + + + + @foreach (EnumValueDescription value in Model.Values) + { + + + + + + } + +
NameValueDescription
@value.Name +

@value.Value

+
+

@value.Documentation

+
\ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/HelpPageApiModel.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/HelpPageApiModel.cshtml.pp new file mode 100644 index 0000000..b09470d --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/HelpPageApiModel.cshtml.pp @@ -0,0 +1,67 @@ +@using System.Web.Http +@using System.Web.Http.Description +@using $rootnamespace$.Areas.HelpPage.Models +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model HelpPageApiModel + +@{ + ApiDescription description = Model.ApiDescription; +} +

@description.HttpMethod.Method @description.RelativePath

+
+

@description.Documentation

+ +

Request Information

+ +

URI Parameters

+ @Html.DisplayFor(m => m.UriParameters, "Parameters") + +

Body Parameters

+ +

@Model.RequestDocumentation

+ + @if (Model.RequestModelDescription != null) + { + @Html.DisplayFor(m => m.RequestModelDescription.ModelType, "ModelDescriptionLink", new { modelDescription = Model.RequestModelDescription }) + if (Model.RequestBodyParameters != null) + { + @Html.DisplayFor(m => m.RequestBodyParameters, "Parameters") + } + } + else + { +

None.

+ } + + @if (Model.SampleRequests.Count > 0) + { +

Request Formats

+ @Html.DisplayFor(m => m.SampleRequests, "Samples") + } + +

Response Information

+ +

Resource Description

+ +

@description.ResponseDescription.Documentation

+ + @if (Model.ResourceDescription != null) + { + @Html.DisplayFor(m => m.ResourceDescription.ModelType, "ModelDescriptionLink", new { modelDescription = Model.ResourceDescription }) + if (Model.ResourceProperties != null) + { + @Html.DisplayFor(m => m.ResourceProperties, "Parameters") + } + } + else + { +

None.

+ } + + @if (Model.SampleResponses.Count > 0) + { +

Response Formats

+ @Html.DisplayFor(m => m.SampleResponses, "Samples") + } + +
\ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ImageSample.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ImageSample.cshtml.pp new file mode 100644 index 0000000..8463b83 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ImageSample.cshtml.pp @@ -0,0 +1,4 @@ +@using $rootnamespace$.Areas.HelpPage +@model ImageSample + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/InvalidSample.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/InvalidSample.cshtml.pp new file mode 100644 index 0000000..e9cf0b5 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/InvalidSample.cshtml.pp @@ -0,0 +1,13 @@ +@using $rootnamespace$.Areas.HelpPage +@model InvalidSample + +@if (HttpContext.Current.IsDebuggingEnabled) +{ +
+

@Model.ErrorMessage

+
+} +else +{ +

Sample not available.

+} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/KeyValuePairModelDescription.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/KeyValuePairModelDescription.cshtml.pp new file mode 100644 index 0000000..fa988ec --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/KeyValuePairModelDescription.cshtml.pp @@ -0,0 +1,4 @@ +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model KeyValuePairModelDescription +Pair of @Html.DisplayFor(m => Model.KeyModelDescription.ModelType, "ModelDescriptionLink", new { modelDescription = Model.KeyModelDescription }) [key] +and @Html.DisplayFor(m => Model.ValueModelDescription.ModelType, "ModelDescriptionLink", new { modelDescription = Model.ValueModelDescription }) [value] \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ModelDescriptionLink.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ModelDescriptionLink.cshtml.pp new file mode 100644 index 0000000..3874d02 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/ModelDescriptionLink.cshtml.pp @@ -0,0 +1,26 @@ +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model Type +@{ + ModelDescription modelDescription = ViewBag.modelDescription; + if (modelDescription is ComplexTypeModelDescription || modelDescription is EnumTypeModelDescription) + { + if (Model == typeof(Object)) + { + @:Object + } + else + { + @Html.ActionLink(modelDescription.Name, "ResourceModel", "Help", new { modelName = modelDescription.Name }, null) + } + } + else if (modelDescription is CollectionModelDescription) + { + var collectionDescription = modelDescription as CollectionModelDescription; + var elementDescription = collectionDescription.ElementDescription; + @:Collection of @Html.DisplayFor(m => elementDescription.ModelType, "ModelDescriptionLink", new { modelDescription = elementDescription }) + } + else + { + @Html.DisplayFor(m => modelDescription) + } +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/Parameters.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/Parameters.cshtml.pp new file mode 100644 index 0000000..9fbd8d6 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/Parameters.cshtml.pp @@ -0,0 +1,48 @@ +@using System.Collections.Generic +@using System.Collections.ObjectModel +@using System.Web.Http.Description +@using System.Threading +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model IList + +@if (Model.Count > 0) +{ + + + + + + @foreach (ParameterDescription parameter in Model) + { + ModelDescription modelDescription = parameter.TypeDescription; + + + + + + + } + +
NameDescriptionTypeAdditional information
@parameter.Name +

@parameter.Documentation

+
+ @Html.DisplayFor(m => modelDescription.ModelType, "ModelDescriptionLink", new { modelDescription = modelDescription }) + + @if (parameter.Annotations.Count > 0) + { + foreach (var annotation in parameter.Annotations) + { +

@annotation.Documentation

+ } + } + else + { +

None.

+ } +
+} +else +{ +

None.

+} + diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/Samples.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/Samples.cshtml.pp new file mode 100644 index 0000000..69044cf --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/Samples.cshtml.pp @@ -0,0 +1,30 @@ +@using System.Net.Http.Headers +@model Dictionary + +@{ + // Group the samples into a single tab if they are the same. + Dictionary samples = Model.GroupBy(pair => pair.Value).ToDictionary( + pair => String.Join(", ", pair.Select(m => m.Key.ToString()).ToArray()), + pair => pair.Key); + var mediaTypes = samples.Keys; +} +
+ @foreach (var mediaType in mediaTypes) + { +

@mediaType

+
+ Sample: + @{ + var sample = samples[mediaType]; + if (sample == null) + { +

Sample not available.

+ } + else + { + @Html.DisplayFor(s => sample); + } + } +
+ } +
\ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/SimpleTypeModelDescription.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/SimpleTypeModelDescription.cshtml.pp new file mode 100644 index 0000000..1484f91 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/SimpleTypeModelDescription.cshtml.pp @@ -0,0 +1,3 @@ +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model SimpleTypeModelDescription +@Model.Documentation \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/TextSample.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/TextSample.cshtml.pp new file mode 100644 index 0000000..0fde482 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/DisplayTemplates/TextSample.cshtml.pp @@ -0,0 +1,6 @@ +@using $rootnamespace$.Areas.HelpPage +@model TextSample + +
+@Model.Text
+
\ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/Index.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/Index.cshtml.pp new file mode 100644 index 0000000..9774301 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/Index.cshtml.pp @@ -0,0 +1,38 @@ +@using System.Web.Http +@using System.Web.Http.Controllers +@using System.Web.Http.Description +@using System.Collections.ObjectModel +@using $rootnamespace$.Areas.HelpPage.Models +@model Collection + +@{ + ViewBag.Title = "ASP.NET Web API Help Page"; + + // Group APIs by controller + ILookup apiGroups = Model.ToLookup(api => api.ActionDescriptor.ControllerDescriptor); +} + + +
+
+
+

@ViewBag.Title

+
+
+
+
+ +
+ @foreach (var group in apiGroups) + { + @Html.DisplayFor(m => group, "ApiGroup") + } +
+
diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/ResourceModel.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/ResourceModel.cshtml.pp new file mode 100644 index 0000000..5f374cd --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Help/ResourceModel.cshtml.pp @@ -0,0 +1,19 @@ +@using System.Web.Http +@using $rootnamespace$.Areas.HelpPage.ModelDescriptions +@model ModelDescription + + +
+ +

@Model.Name

+

@Model.Documentation

+
+ @Html.DisplayFor(m => Model) +
+
diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Shared/_Layout.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Shared/_Layout.cshtml.pp new file mode 100644 index 0000000..2f342c2 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Shared/_Layout.cshtml.pp @@ -0,0 +1,12 @@ + + + + + + @ViewBag.Title + @RenderSection("scripts", required: false) + + + @RenderBody() + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Web.config b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Web.config new file mode 100644 index 0000000..e946f6a --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/Web.config @@ -0,0 +1,41 @@ + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/_ViewStart.cshtml.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/_ViewStart.cshtml.pp new file mode 100644 index 0000000..bf42bcc --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/Views/_ViewStart.cshtml.pp @@ -0,0 +1,4 @@ +@{ + // Change the Layout path below to blend the look and feel of the help page with your existing web pages. + Layout = "~/Areas/HelpPage/Views/Shared/_Layout.cshtml"; +} \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/XmlDocumentationProvider.cs.pp b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/XmlDocumentationProvider.cs.pp new file mode 100644 index 0000000..5088c50 --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Content/Areas/HelpPage/XmlDocumentationProvider.cs.pp @@ -0,0 +1,161 @@ +using System; +using System.Globalization; +using System.Linq; +using System.Reflection; +using System.Web.Http.Controllers; +using System.Web.Http.Description; +using System.Xml.XPath; +using $rootnamespace$.Areas.HelpPage.ModelDescriptions; + +namespace $rootnamespace$.Areas.HelpPage +{ + /// + /// A custom that reads the API documentation from an XML documentation file. + /// + public class XmlDocumentationProvider : IDocumentationProvider, IModelDocumentationProvider + { + private XPathNavigator _documentNavigator; + private const string TypeExpression = "/doc/members/member[@name='T:{0}']"; + private const string MethodExpression = "/doc/members/member[@name='M:{0}']"; + private const string PropertyExpression = "/doc/members/member[@name='P:{0}']"; + private const string FieldExpression = "/doc/members/member[@name='F:{0}']"; + private const string ParameterExpression = "param[@name='{0}']"; + + /// + /// Initializes a new instance of the class. + /// + /// The physical path to XML document. + public XmlDocumentationProvider(string documentPath) + { + if (documentPath == null) + { + throw new ArgumentNullException("documentPath"); + } + XPathDocument xpath = new XPathDocument(documentPath); + _documentNavigator = xpath.CreateNavigator(); + } + + public string GetDocumentation(HttpControllerDescriptor controllerDescriptor) + { + XPathNavigator typeNode = GetTypeNode(controllerDescriptor.ControllerType); + return GetTagValue(typeNode, "summary"); + } + + public virtual string GetDocumentation(HttpActionDescriptor actionDescriptor) + { + XPathNavigator methodNode = GetMethodNode(actionDescriptor); + return GetTagValue(methodNode, "summary"); + } + + public virtual string GetDocumentation(HttpParameterDescriptor parameterDescriptor) + { + ReflectedHttpParameterDescriptor reflectedParameterDescriptor = parameterDescriptor as ReflectedHttpParameterDescriptor; + if (reflectedParameterDescriptor != null) + { + XPathNavigator methodNode = GetMethodNode(reflectedParameterDescriptor.ActionDescriptor); + if (methodNode != null) + { + string parameterName = reflectedParameterDescriptor.ParameterInfo.Name; + XPathNavigator parameterNode = methodNode.SelectSingleNode(String.Format(CultureInfo.InvariantCulture, ParameterExpression, parameterName)); + if (parameterNode != null) + { + return parameterNode.Value.Trim(); + } + } + } + + return null; + } + + public string GetResponseDocumentation(HttpActionDescriptor actionDescriptor) + { + XPathNavigator methodNode = GetMethodNode(actionDescriptor); + return GetTagValue(methodNode, "returns"); + } + + public string GetDocumentation(MemberInfo member) + { + string memberName = String.Format(CultureInfo.InvariantCulture, "{0}.{1}", GetTypeName(member.DeclaringType), member.Name); + string expression = member.MemberType == MemberTypes.Field ? FieldExpression : PropertyExpression; + string selectExpression = String.Format(CultureInfo.InvariantCulture, expression, memberName); + XPathNavigator propertyNode = _documentNavigator.SelectSingleNode(selectExpression); + return GetTagValue(propertyNode, "summary"); + } + + public string GetDocumentation(Type type) + { + XPathNavigator typeNode = GetTypeNode(type); + return GetTagValue(typeNode, "summary"); + } + + private XPathNavigator GetMethodNode(HttpActionDescriptor actionDescriptor) + { + ReflectedHttpActionDescriptor reflectedActionDescriptor = actionDescriptor as ReflectedHttpActionDescriptor; + if (reflectedActionDescriptor != null) + { + string selectExpression = String.Format(CultureInfo.InvariantCulture, MethodExpression, GetMemberName(reflectedActionDescriptor.MethodInfo)); + return _documentNavigator.SelectSingleNode(selectExpression); + } + + return null; + } + + private static string GetMemberName(MethodInfo method) + { + string name = String.Format(CultureInfo.InvariantCulture, "{0}.{1}", GetTypeName(method.DeclaringType), method.Name); + ParameterInfo[] parameters = method.GetParameters(); + if (parameters.Length != 0) + { + string[] parameterTypeNames = parameters.Select(param => GetTypeName(param.ParameterType)).ToArray(); + name += String.Format(CultureInfo.InvariantCulture, "({0})", String.Join(",", parameterTypeNames)); + } + + return name; + } + + private static string GetTagValue(XPathNavigator parentNode, string tagName) + { + if (parentNode != null) + { + XPathNavigator node = parentNode.SelectSingleNode(tagName); + if (node != null) + { + return node.Value.Trim(); + } + } + + return null; + } + + private XPathNavigator GetTypeNode(Type type) + { + string controllerTypeName = GetTypeName(type); + string selectExpression = String.Format(CultureInfo.InvariantCulture, TypeExpression, controllerTypeName); + return _documentNavigator.SelectSingleNode(selectExpression); + } + + private static string GetTypeName(Type type) + { + string name = type.FullName; + if (type.IsGenericType) + { + // Format the generic type name to something like: Generic{System.Int32,System.String} + Type genericType = type.GetGenericTypeDefinition(); + Type[] genericArguments = type.GetGenericArguments(); + string genericTypeName = genericType.FullName; + + // Trim the generic parameter counts from the name + genericTypeName = genericTypeName.Substring(0, genericTypeName.IndexOf('`')); + string[] argumentTypeNames = genericArguments.Select(t => GetTypeName(t)).ToArray(); + name = String.Format(CultureInfo.InvariantCulture, "{0}{{{1}}}", genericTypeName, String.Join(",", argumentTypeNames)); + } + if (type.IsNested) + { + // Changing the nested type name from OuterType+InnerType to OuterType.InnerType to match the XML documentation syntax. + name = name.Replace("+", "."); + } + + return name; + } + } +} diff --git a/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Microsoft.AspNet.WebApi.HelpPage.5.2.4.nupkg b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Microsoft.AspNet.WebApi.HelpPage.5.2.4.nupkg new file mode 100644 index 0000000..d5600af Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.HelpPage.5.2.4/Microsoft.AspNet.WebApi.HelpPage.5.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/Microsoft.AspNet.WebApi.WebHost.5.2.4.nupkg b/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/Microsoft.AspNet.WebApi.WebHost.5.2.4.nupkg new file mode 100644 index 0000000..3509dbe Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/Microsoft.AspNet.WebApi.WebHost.5.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/lib/net45/System.Web.Http.WebHost.dll b/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/lib/net45/System.Web.Http.WebHost.dll new file mode 100644 index 0000000..69952a1 Binary files /dev/null and b/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/lib/net45/System.Web.Http.WebHost.dll differ diff --git a/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/lib/net45/System.Web.Http.WebHost.xml b/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/lib/net45/System.Web.Http.WebHost.xml new file mode 100644 index 0000000..89aabcc --- /dev/null +++ b/packages/Microsoft.AspNet.WebApi.WebHost.5.2.4/lib/net45/System.Web.Http.WebHost.xml @@ -0,0 +1,135 @@ + + + + System.Web.Http.WebHost + + + + Provides a global for ASP.NET applications. + + + + + + Gets the global . + + + Extension methods for + + + Maps the specified route template. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + + + Maps the specified route template and sets default route. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + An object that contains default route values. + + + Maps the specified route template and sets default route values and constraints. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + An object that contains default route values. + A set of expressions that specify values for routeTemplate. + + + Maps the specified route template and sets default route values, constraints, and end-point message handler. + A reference to the mapped route. + A collection of routes for the application. + The name of the route to map. + The route template for the route. + An object that contains default route values. + A set of expressions that specify values for routeTemplate. + The handler to which the request will be dispatched. + + + A that passes ASP.NET requests into the pipeline and write the result back. + + + Initializes a new instance of the class. + The route data. + + + Initializes a new instance of the class. + The route data. + The message handler to dispatch requests to. + + + Provides code that handles an asynchronous task + The asynchronous task. + The HTTP context. + + + A that returns instances of that can pass requests to a given instance. + + + Initializes a new instance of the class. + + + Provides the object that processes the request. + An object that processes the request. + An object that encapsulates information about the request. + + + Gets the singleton instance. + + + Provides the object that processes the request. + An object that processes the request. + An object that encapsulates information about the request. + + + Provides a registration point for the simple membership pre-application start code. + + + Registers the simple membership pre-application start code. + + + Represents the web host buffer policy selector. + + + Initializes a new instance of the class. + + + Gets a value that indicates whether the host should buffer the entity body of the HTTP request. + true if buffering should be used; otherwise a streamed request should be used. + The host context. + + + Uses a buffered output stream for the web host. + A buffered output stream. + The response. + + + Provides the catch blocks used within this assembly. + + + Gets the label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.WriteBufferedResponseContentAsync. + The label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.WriteBufferedResponseContentAsync. + + + Gets the label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.WriteErrorResponseContentAsync. + The label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.WriteErrorResponseContentAsync. + + + Gets the label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.ComputeContentLength. + The label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.ComputeContentLength. + + + Gets the label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.WriteStreamedResponseContentAsync. + The label for the catch block in System.Web.Http.WebHost.HttpControllerHandler.WriteStreamedResponseContentAsync. + + + Gets the label for the catch block in System.Web.Http.WebHost.WebHostExceptionCatchBlocks.HttpWebRoute.GetRouteData. + The catch block in System.Web.Http.WebHost.WebHostExceptionCatchBlocks.HttpWebRoute.GetRouteData. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/Content/Web.config.install.xdt b/packages/Microsoft.AspNet.WebPages.3.2.4/Content/Web.config.install.xdt new file mode 100644 index 0000000..74a98dc --- /dev/null +++ b/packages/Microsoft.AspNet.WebPages.3.2.4/Content/Web.config.install.xdt @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/Content/Web.config.uninstall.xdt b/packages/Microsoft.AspNet.WebPages.3.2.4/Content/Web.config.uninstall.xdt new file mode 100644 index 0000000..234e2c5 --- /dev/null +++ b/packages/Microsoft.AspNet.WebPages.3.2.4/Content/Web.config.uninstall.xdt @@ -0,0 +1,13 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/Microsoft.AspNet.WebPages.3.2.4.nupkg b/packages/Microsoft.AspNet.WebPages.3.2.4/Microsoft.AspNet.WebPages.3.2.4.nupkg new file mode 100644 index 0000000..f3ef947 Binary files /dev/null and b/packages/Microsoft.AspNet.WebPages.3.2.4/Microsoft.AspNet.WebPages.3.2.4.nupkg differ diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.Helpers.dll b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.Helpers.dll new file mode 100644 index 0000000..f2b95bf Binary files /dev/null and b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.Helpers.dll differ diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.Helpers.xml b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.Helpers.xml new file mode 100644 index 0000000..d5cfa6d --- /dev/null +++ b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.Helpers.xml @@ -0,0 +1,839 @@ + + + + System.Web.Helpers + + + + Displays data in the form of a graphical chart. + + + Initializes a new instance of the class. + The width, in pixels, of the complete chart image. + The height, in pixels, of the complete chart image. + (Optional) The template (theme) to apply to the chart. + (Optional) The template (theme) path and file name to apply to the chart. + + + Adds a legend to the chart. + The chart. + The text of the legend title. + The unique name of the legend. + + + Provides data points and series attributes for the chart. + The chart. + The unique name of the series. + The chart type of a series. + The name of the chart area that is used to plot the data series. + The axis label text for the series. + The name of the series that is associated with the legend. + The granularity of data point markers. + The values to plot along the x-axis. + The name of the field for x-values. + The values to plot along the y-axis. + A comma-separated list of name or names of the field or fields for y-values. + + + Adds a title to the chart. + The chart. + The title text. + The unique name of the title. + + + Binds a chart to a data table, where one series is created for each unique value in a column. + The chart. + The chart data source. + The name of the column that is used to group data into the series. + The name of the column for x-values. + A comma-separated list of names of the columns for y-values. + Other data point properties that can be bound. + The order in which the series will be sorted. The default is "Ascending". + + + Creates and binds series data to the specified data table, and optionally populates multiple x-values. + The chart. + The chart data source. This can be can be any object. + The name of the table column used for the series x-values. + + + Gets or sets the name of the file that contains the chart image. + The name of the file. + + + Returns a chart image as a byte array. + The chart. + The image format. The default is "jpeg". + + + Retrieves the specified chart from the cache. + The chart. + The ID of the cache item that contains the chart to retrieve. The key is set when you call the method. + + + Gets or sets the height, in pixels, of the chart image. + The chart height. + + + Saves a chart image to the specified file. + The chart. + The location and name of the image file. + The image file format, such as "png" or "jpeg". + + + Saves a chart in the system cache. + The ID of the cache item that contains the chart. + The ID of the chart in the cache. + The number of minutes to keep the chart image in the cache. The default is 20. + true to indicate that the chart cache item's expiration is reset each time the item is accessed, or false to indicate that the expiration is based on an absolute interval since the time that the item was added to the cache. The default is true. + + + Saves a chart as an XML file. + The chart. + The path and name of the XML file. + + + Sets values for the horizontal axis. + The chart. + The title of the x-axis. + The minimum value for the x-axis. + The maximum value for the x-axis. + + + Sets values for the vertical axis. + The chart. + The title of the y-axis. + The minimum value for the y-axis. + The maximum value for the y-axis. + + + Creates a object based on the current object. + The chart. + The format of the image to save the object as. The default is "jpeg". The parameter is not case sensitive. + + + Gets or set the width, in pixels, of the chart image. + The chart width. + + + Renders the output of the object as an image. + The chart. + The format of the image. The default is "jpeg". + + + Renders the output of a object that has been cached as an image. + The chart. + The ID of the chart in the cache. + The format of the image. The default is "jpeg". + + + Specifies visual themes for a object. + + + A theme for 2D charting that features a visual container with a blue gradient, rounded edges, drop-shadowing, and high-contrast gridlines. + + + A theme for 2D charting that features a visual container with a green gradient, rounded edges, drop-shadowing, and low-contrast gridlines. + + + A theme for 2D charting that features no visual container and no gridlines. + + + A theme for 3D charting that features no visual container, limited labeling and, sparse, high-contrast gridlines. + + + A theme for 2D charting that features a visual container that has a yellow gradient, rounded edges, drop-shadowing, and high-contrast gridlines. + + + Provides methods to generate hash values and encrypt passwords or other sensitive data. + + + Generates a cryptographically strong sequence of random byte values. + The generated salt value as a base-64-encoded string. + The number of cryptographically random bytes to generate. + + + Returns a hash value for the specified byte array. + The hash value for as a string of hexadecimal characters. + The data to provide a hash value for. + The algorithm that is used to generate the hash value. The default is "sha256". + + is null. + + + Returns a hash value for the specified string. + The hash value for as a string of hexadecimal characters. + The data to provide a hash value for. + The algorithm that is used to generate the hash value. The default is "sha256". + + is null. + + + Returns an RFC 2898 hash value for the specified password. + The hash value for as a base-64-encoded string. + The password to generate a hash value for. + + is null. + + + Returns a SHA-1 hash value for the specified string. + The SHA-1 hash value for as a string of hexadecimal characters. + The data to provide a hash value for. + + is null. + + + Returns a SHA-256 hash value for the specified string. + The SHA-256 hash value for as a string of hexadecimal characters. + The data to provide a hash value for. + + is null. + + + Determines whether the specified RFC 2898 hash and password are a cryptographic match. + true if the hash value is a cryptographic match for the password; otherwise, false. + The previously-computed RFC 2898 hash value as a base-64-encoded string. + The plaintext password to cryptographically compare with . + + or is null. + + + Represents a series of values as a JavaScript-like array by using the dynamic capabilities of the Dynamic Language Runtime (DLR). + + + Initializes a new instance of the class using the specified array element values. + An array of objects that contains the values to add to the instance. + + + Returns an enumerator that can be used to iterate through the elements of the instance. + An enumerator that can be used to iterate through the elements of the JSON array. + + + Returns the value at the specified index in the instance. + The value at the specified index. + + + Returns the number of elements in the instance. + The number of elements in the JSON array. + + + Converts a instance to an array of objects. + The array of objects that represents the JSON array. + The JSON array to convert. + + + Converts a instance to an array of objects. + The array of objects that represents the JSON array. + The JSON array to convert. + + + Returns an enumerator that can be used to iterate through a collection. + An enumerator that can be used to iterate through the collection. + + + Converts the instance to a compatible type. + true if the conversion was successful; otherwise, false. + Provides information about the conversion operation. + When this method returns, contains the result of the type conversion operation. This parameter is passed uninitialized. + + + Tests the instance for dynamic members (which are not supported) in a way that does not cause an exception to be thrown. + true in all cases. + Provides information about the get operation. + When this method returns, contains null. This parameter is passed uninitialized. + + + Represents a collection of values as a JavaScript-like object by using the capabilities of the Dynamic Language Runtime. + + + Initializes a new instance of the class using the specified field values. + A dictionary of property names and values to add to the instance as dynamic members. + + + Returns a list that contains the name of all dynamic members (JSON fields) of the instance. + A list that contains the name of every dynamic member (JSON field). + + + Converts the instance to a compatible type. + true in all cases. + Provides information about the conversion operation. + When this method returns, contains the result of the type conversion operation. This parameter is passed uninitialized. + The instance could not be converted to the specified type. + + + Gets the value of a field using the specified index. + true in all cases. + Provides information about the indexed get operation. + An array that contains a single object that indexes the field by name. The object must be convertible to a string that specifies the name of the JSON field to return. If multiple indexes are specified, contains null when this method returns. + When this method returns, contains the value of the indexed field, or null if the get operation was unsuccessful. This parameter is passed uninitialized. + + + Gets the value of a field using the specified name. + true in all cases. + Provides information about the get operation. + When this method returns, contains the value of the field, or null if the get operation was unsuccessful. This parameter is passed uninitialized. + + + Sets the value of a field using the specified index. + true in all cases. + Provides information about the indexed set operation. + An array that contains a single object that indexes the field by name. The object must be convertible to a string that specifies the name of the JSON field to return. If multiple indexes are specified, no field is changed or added. + The value to set the field to. + + + Sets the value of a field using the specified name. + true in all cases. + Provides information about the set operation. + The value to set the field to. + + + Provides methods for working with data in JavaScript Object Notation (JSON) format. + + + Converts data in JavaScript Object Notation (JSON) format into the specified strongly typed data list. + The JSON-encoded data converted to a strongly typed list. + The JSON-encoded string to convert. + The type of the strongly typed list to convert JSON data into. + + + Converts data in JavaScript Object Notation (JSON) format into a data object. + The JSON-encoded data converted to a data object. + The JSON-encoded string to convert. + + + Converts data in JavaScript Object Notation (JSON) format into a data object of a specified type. + The JSON-encoded data converted to the specified type. + The JSON-encoded string to convert. + The type that the data should be converted to. + + + Converts a data object to a string that is in the JavaScript Object Notation (JSON) format. + Returns a string of data converted to the JSON format. + The data object to convert. + + + Converts a data object to a string in JavaScript Object Notation (JSON) format and adds the string to the specified object. + The data object to convert. + The object that contains the converted JSON data. + + + Renders the property names and values of the specified object and of any subobjects that it references. + + + Renders the property names and values of the specified object and of any subobjects. + For a simple variable, returns the type and the value. For an object that contains multiple items, returns the property name or key and the value for each property. + The object to render information for. + Optional. Specifies the depth of nested subobjects to render information for. The default is 10. + Optional. Specifies the maximum number of characters that the method displays for object values. The default is 1000. + + is less than zero. + + is less than or equal to zero. + + + Displays information about the web server environment that hosts the current web page. + + + Displays information about the web server environment. + A string of name-value pairs that contains information about the web server. + + + Specifies the direction in which to sort a list of items. + + + Sort from smallest to largest —for example, from 1 to 10. + + + Sort from largest to smallest — for example, from 10 to 1. + + + Provides a cache to store frequently accessed data. + + + Retrieves the specified item from the object. + The item retrieved from the cache, or null if the item is not found. + The identifier for the cache item to retrieve. + + + Removes the specified item from the object. + The item removed from the object. If the item is not found, returns null. + The identifier for the cache item to remove. + + + Inserts an item into the object. + The identifier for the cache item. + The data to insert into the cache. + Optional. The number of minutes to keep an item in the cache. The default is 20. + Optional. true to indicate that the cache item expiration is reset each time the item is accessed, or false to indicate that the expiration is based the absolute time since the item was added to the cache. The default is true. In that case, if you also use the default value for the parameter, a cached item expires 20 minutes after it was last accessed. + The value of is less than or equal to zero. + Sliding expiration is enabled and the value of is greater than a year. + + + Displays data on a web page using an HTML table element. + + + Initializes a new instance of the class. + The data to display. + A collection that contains the names of the data columns to display. By default, this value is auto-populated according to the values in the parameter. + The name of the data column that is used to sort the grid by default. + The number of rows that are displayed on each page of the grid when paging is enabled. The default is 10. + true to specify that paging is enabled for the instance; otherwise false. The default is true. + true to specify that sorting is enabled for the instance; otherwise, false. The default is true. + The value of the HTML id attribute that is used to mark the HTML element that gets dynamic Ajax updates that are associated with the instance. + The name of the JavaScript function that is called after the HTML element specified by the property has been updated. If the name of a function is not provided, no function will be called. If the specified function does not exist, a JavaScript error will occur if it is invoked. + The prefix that is applied to all query-string fields that are associated with the instance. This value is used in order to support multiple instances on the same web page. + The name of the query-string field that is used to specify the current page of the instance. + The name of the query-string field that is used to specify the currently selected row of the instance. + The name of the query-string field that is used to specify the name of the data column that the instance is sorted by. + The name of the query-string field that is used to specify the direction in which the instance is sorted. + + + Adds a specific sort function for a given column. + The current grid, with the new custom sorter applied. + The column name (as used for sorting) + The function used to select a key to sort by, for each element in the grid's source. + The type of elements in the grid's source. + The column type, usually inferred from the keySelector function's return type. + + + Gets the name of the JavaScript function to call after the HTML element that is associated with the instance has been updated in response to an Ajax update request. + The name of the function. + + + Gets the value of the HTML id attribute that marks an HTML element on the web page that gets dynamic Ajax updates that are associated with the instance. + The value of the id attribute. + + + Binds the specified data to the instance. + The bound and populated instance. + The data to display. + A collection that contains the names of the data columns to bind. + true to enable sorting and paging of the instance; otherwise, false. + The number of rows to display on each page of the grid. + + + Gets a value that indicates whether the instance supports sorting. + true if the instance supports sorting; otherwise, false. + + + Creates a new instance. + The new column. + The name of the data column to associate with the instance. + The text that is rendered in the header of the HTML table column that is associated with the instance. + The function that is used to format the data values that are associated with the instance. + A string that specifies the name of the CSS class that is used to style the HTML table cells that are associated with the instance. + true to enable sorting in the instance by the data values that are associated with the instance; otherwise, false. The default is true. + + + Gets a collection that contains the name of each data column that is bound to the instance. + The collection of data column names. + + + Returns an array that contains the specified instances. + An array of columns. + A variable number of column instances. + + + Gets the prefix that is applied to all query-string fields that are associated with the instance. + The query-string field prefix of the instance. + + + Returns a JavaScript statement that can be used to update the HTML element that is associated with the instance on the specified web page. + A JavaScript statement that can be used to update the HTML element in a web page that is associated with the instance. + The URL of the web page that contains the instance that is being updated. The URL can include query-string arguments. + + + Returns the HTML markup that is used to render the instance and using the specified paging options. + The HTML markup that represents the fully-populated instance. + The name of the CSS class that is used to style the whole table. + The name of the CSS class that is used to style the table header. + The name of the CSS class that is used to style the table footer. + The name of the CSS class that is used to style each table row. + The name of the CSS class that is used to style even-numbered table rows. + The name of the CSS class that is used to style the selected table row. (Only one row can be selected at a time.) + The table caption. + true to display the table header; otherwise, false. The default is true. + true to insert additional rows in the last page when there are insufficient data items to fill the last page; otherwise, false. The default is false. Additional rows are populated using the text specified by the parameter. + The text that is used to populate additional rows in a page when there are insufficient data items to fill the last page. The parameter must be set to true to display these additional rows. + A collection of instances that specify how each column is displayed. This includes which data column is associated with each grid column, and how to format the data values that each grid column contains. + A collection that contains the names of the data columns to exclude when the grid auto-populates columns. + A bitwise combination of the enumeration values that specify methods that are provided for moving between pages of the instance. + The text for the HTML link element that is used to link to the first page of the instance. The flag of the parameter must be set to display this page navigation element. + The text for the HTML link element that is used to link to previous page of the instance. The flag of the parameter must be set to display this page navigation element. + The text for the HTML link element that is used to link to the next page of the instance. The flag of the parameter must be set to display this page navigation element. + The text for the HTML link element that is used to link to the last page of the instance. The flag of the parameter must be set to display this page navigation element. + The number of numeric page links that are provided to nearby pages. The text of each numeric page link contains the page number. The flag of the parameter must be set to display these page navigation elements. + An object that represents a collection of attributes (names and values) to set for the HTML table element that represents the instance. + + + Returns a URL that can be used to display the specified data page of the instance. + A URL that can be used to display the specified data page of the grid. + The index of the page to display. + + + Returns a URL that can be used to sort the instance by the specified column. + A URL that can be used to sort the grid. + The name of the data column to sort by. + + + Gets a value that indicates whether a row in the instance is selected. + true if a row is currently selected; otherwise, false. + + + Returns a value that indicates whether the instance can use Ajax calls to refresh the display. + true if the instance supports Ajax calls; otherwise, false.. + + + Gets the number of pages that the instance contains. + The page count. + + + Gets the full name of the query-string field that is used to specify the current page of the instance. + The full name of the query string field that is used to specify the current page of the grid. + + + Gets or sets the index of the current page of the instance. + The index of the current page. + + + Returns the HTML markup that is used to provide the specified paging support for the instance. + The HTML markup that provides paging support for the grid. + A bitwise combination of the enumeration values that specify the methods that are provided for moving between the pages of the grid. The default is the bitwise OR of the and flags. + The text for the HTML link element that navigates to the first page of the grid. + The text for the HTML link element that navigates to the previous page of the grid. + The text for the HTML link element that navigates to the next page of the grid. + The text for the HTML link element that navigates to the last page of the grid. + The number of numeric page links to display. The default is 5. + + + Gets a list that contains the rows that are on the current page of the instance after the grid has been sorted. + The list of rows. + + + Gets the number of rows that are displayed on each page of the instance. + The number of rows that are displayed on each page of the grid. + + + Gets or sets the index of the selected row relative to the current page of the instance. + The index of the selected row relative to the current page. + + + Gets the currently selected row of the instance. + The currently selected row. + + + Gets the full name of the query-string field that is used to specify the selected row of the instance. + The full name of the query string field that is used to specify the selected row of the grid. + + + Gets or sets the name of the data column that the instance is sorted by. + The name of the data column that is used to sort the grid. + + + Gets or sets the direction in which the instance is sorted. + The sort direction. + + + Gets the full name of the query-string field that is used to specify the sort direction of the instance. + The full name of the query string field that is used to specify the sort direction of the grid. + + + Gets the full name of the query-string field that is used to specify the name of the data column that the instance is sorted by. + The full name of the query-string field that is used to specify the name of the data column that the grid is sorted by. + + + Returns the HTML markup that is used to render the instance. + The HTML markup that represents the fully-populated instance. + The name of the CSS class that is used to style the whole table. + The name of the CSS class that is used to style the table header. + The name of the CSS class that is used to style the table footer. + The name of the CSS class that is used to style each table row. + The name of the CSS class that is used to style even-numbered table rows. + The name of the CSS class that is used use to style the selected table row. + The table caption. + true to display the table header; otherwise, false. The default is true. + true to insert additional rows in the last page when there are insufficient data items to fill the last page; otherwise, false. The default is false. Additional rows are populated using the text specified by the parameter. + The text that is used to populate additional rows in the last page when there are insufficient data items to fill the last page. The parameter must be set to true to display these additional rows. + A collection of instances that specify how each column is displayed. This includes which data column is associated with each grid column, and how to format the data values that each grid column contains. + A collection that contains the names of the data columns to exclude when the grid auto-populates columns. + A function that returns the HTML markup that is used to render the table footer. + An object that represents a collection of attributes (names and values) to set for the HTML table element that represents the instance. + + + Gets the total number of rows that the instance contains. + The total number of rows in the grid. This value includes all rows from every page, but does not include the additional rows inserted in the last page when there are insufficient data items to fill the last page. + + + Represents a column in a instance. + + + Initializes a new instance of the class. + + + Gets or sets a value that indicates whether the column can be sorted. + true to indicate that the column can be sorted; otherwise, false. + + + Gets or sets the name of the data item that is associated with the column. + The name of the data item. + + + Gets or sets a function that is used to format the data item that is associated with the column. + The function that is used to format that data item that is associated with the column. + + + Gets or sets the text that is rendered in the header of the column. + The text that is rendered to the column header. + + + Gets or sets the CSS class attribute that is rendered as part of the HTML table cells that are associated with the column. + The CSS class attribute that is applied to cells that are associated with the column. + + + Specifies flags that describe the methods that are provided for moving between the pages of a instance.This enumeration has a attribute that allows a bitwise combination of its member values. + + + Indicates that all methods for moving between pages are provided. + + + Indicates that methods for moving directly to the first or last page are provided. + + + Indicates that methods for moving to the next or previous page are provided. + + + Indicates that methods for moving to a nearby page by using a page number are provided. + + + Represents a row in a instance. + + + Initializes a new instance of the class using the specified instance, row value, and index. + The instance that contains the row. + An object that contains a property member for each value in the row. + The index of the row. + + + Returns an enumerator that can be used to iterate through the values of the instance. + An enumerator that can be used to iterate through the values of the row. + + + Returns an HTML element (a link) that users can use to select the row. + The link that users can click to select the row. + The inner text of the link element. If is empty or null, "Select" is used. + + + Returns the URL that can be used to select the row. + The URL that is used to select a row. + + + Returns the value at the specified index in the instance. + The value at the specified index. + The zero-based index of the value in the row to return. + + is less than 0 or greater than or equal to the number of values in the row. + + + Returns the value that has the specified name in the instance. + The specified value. + The name of the value in the row to return. + + is Nothing or empty. + + specifies a value that does not exist. + + + Returns an enumerator that can be used to iterate through a collection. + An enumerator that can be used to iterate through the collection. + + + Returns a string that represents all of the values of the instance. + A string that represents the row's values. + + + Returns the value of a member that is described by the specified binder. + true if the value of the item was successfully retrieved; otherwise, false. + The getter of the bound property member. + When this method returns, contains an object that holds the value of the item described by . This parameter is passed uninitialized. + + + Gets an object that contains a property member for each value in the row. + An object that contains each value in the row as a property. + + + Gets the instance that the row belongs to. + The instance that contains the row. + + + Represents an object that lets you display and manage images in a web page. + + + Initializes a new instance of the class using a byte array to represent the image. + The image. + + + Initializes a new instance of the class using a stream to represent the image. + The image. + + + Initializes a new instance of the class using a path to represent the image location. + The path of the file that contains the image. + + + Adds a watermark image using a path to the watermark image. + The watermarked image. + The path of a file that contains the watermark image. + The width, in pixels, of the watermark image. + The height, in pixels, of the watermark image. + The horizontal alignment for watermark image. Values can be "Left", "Right", or "Center". + The vertical alignment for the watermark image. Values can be "Top", "Middle", or "Bottom". + The opacity for the watermark image, specified as a value between 0 and 100. + The size, in pixels, of the padding around the watermark image. + + + Adds a watermark image using the specified image object. + The watermarked image. + A object. + The width, in pixels, of the watermark image. + The height, in pixels, of the watermark image. + The horizontal alignment for watermark image. Values can be "Left", "Right", or "Center". + The vertical alignment for the watermark image. Values can be "Top", "Middle", or "Bottom". + The opacity for the watermark image, specified as a value between 0 and 100. + The size, in pixels, of the padding around the watermark image. + + + Adds watermark text to the image. + The watermarked image. + The text to use as a watermark. + The color of the watermark text. + The font size of the watermark text. + The font style of the watermark text. + The font type of the watermark text. + The horizontal alignment for watermark text. Values can be "Left", "Right", or "Center". + The vertical alignment for the watermark text. Values can be "Top", "Middle", or "Bottom". + The opacity for the watermark image, specified as a value between 0 and 100. + The size, in pixels, of the padding around the watermark text. + + + Copies the object. + The image. + + + Crops an image. + The cropped image. + The number of pixels to remove from the top. + The number of pixels to remove from the left. + The number of pixels to remove from the bottom. + The number of pixels to remove from the right. + + + Gets or sets the file name of the object. + The file name. + + + Flips an image horizontally. + The flipped image. + + + Flips an image vertically. + The flipped image. + + + Returns the image as a byte array. + The image. + The value of the object. + + + Returns an image that has been uploaded using the browser. + The image. + (Optional) The name of the file that has been posted. If no file name is specified, the first file that was uploaded is returned. + + + Gets the height, in pixels, of the image. + The height. + + + Gets the format of the image (for example, "jpeg" or "png"). + The file format of the image. + + + Resizes an image. + The resized image. + The width, in pixels, of the object. + The height, in pixels, of the object. + true to preserve the aspect ratio of the image; otherwise, false. + true to prevent the enlargement of the image; otherwise, false. + + + Rotates an image to the left. + The rotated image. + + + Rotates an image to the right. + The rotated image. + + + Saves the image using the specified file name. + The image. + The path to save the image to. + The format to use when the image file is saved, such as "gif", or "png". + true to force the correct file-name extension to be used for the format that is specified in ; otherwise, false. If there is a mismatch between the file type and the specified file-name extension, and if is true, the correct extension will be appended to the file name. For example, a PNG file named Photograph.txt is saved using the name Photograph.txt.png. + + + Gets the width, in pixels, of the image. + The width. + + + Renders an image to the browser. + The image. + (Optional) The file format to use when the image is written. + + + Provides a way to construct and send an email message using Simple Mail Transfer Protocol (SMTP). + + + Gets or sets a value that indicates whether Secure Sockets Layer (SSL) is used to encrypt the connection when an email message is sent. + true if SSL is used to encrypt the connection; otherwise, false. + + + Gets or sets the email address of the sender. + The email address of the sender. + + + Gets or sets the password of the sender's email account. + The sender's password. + + + Sends the specified message to an SMTP server for delivery. + The email address of the recipient or recipients. Separate multiple recipients using a semicolon (;). + The subject line for the email message. + The body of the email message. If is true, HTML in the body is interpreted as markup. + (Optional) The email address of the message sender, or null to not specify a sender. The default value is null. + (Optional) The email addresses of additional recipients to send a copy of the message to, or null if there are no additional recipients. Separate multiple recipients using a semicolon (;). The default value is null. + (Optional) A collection of file names that specifies the files to attach to the email message, or null if there are no files to attach. The default value is null. + (Optional) true to specify that the email message body is in HTML format; false to indicate that the body is in plain-text format. The default value is true. + (Optional) A collection of headers to add to the normal SMTP headers included in this email message, or null to send no additional headers. The default value is null. + (Optional) The email addresses of additional recipients to send a "blind" copy of the message to, or null if there are no additional recipients. Separate multiple recipients using a semicolon (;). The default value is null. + (Optional) The encoding to use for the body of the message. Possible values are property values for the class, such as . The default value is null. + (Optional) The encoding to use for the header of the message. Possible values are property values for the class, such as . The default value is null. + (Optional) A value ("Normal", "Low", "High") that specifies the priority of the message. The default is "Normal". + (Optional) The email address that will be used when the recipient replies to the message. The default value is null, which indicates that the reply address is the value of the From property. + + + Gets or sets the port that is used for SMTP transactions. + The port that is used for SMTP transactions. + + + Gets or sets the name of the SMTP server that is used to transmit the email message. + The SMTP server. + + + Gets or sets a value that indicates whether the default credentials are sent with the requests. + true if credentials are sent with the email message; otherwise, false. + + + Gets or sets the name of email account that is used to send email. + The name of the user account. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Deployment.dll b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Deployment.dll new file mode 100644 index 0000000..5cb93d4 Binary files /dev/null and b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Deployment.dll differ diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Deployment.xml b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Deployment.xml new file mode 100644 index 0000000..7dc960b --- /dev/null +++ b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Deployment.xml @@ -0,0 +1,60 @@ + + + + System.Web.WebPages.Deployment + + + + Provides a registration point for pre-application start code for Web Pages deployment. + + + Registers pre-application start code for Web Pages deployment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Provides methods that are used to get deployment information about the Web application. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the assembly path for the Web Pages deployment. + The assembly path for the Web Pages deployment. + The Web Pages version. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the Web Pages version from the given binary path. + The Web Pages version. + The binary path for the Web Pages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the assembly references from the given path regardless of the Web Pages version. + The dictionary containing the assembly references of the Web Pages and its version. + The path to the Web Pages application. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the maximum version of the Web Pages loaded assemblies. + The maximum version of the Web Pages loaded assemblies. + + + Gets the Web Pages version from the given path. + The Web Pages version. + The path of the root directory for the application. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the Web Pages version using the configuration settings with the specified path. + The Web Pages version. + The path to the application settings. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the assemblies for this Web Pages deployment. + A list containing the assemblies for this Web Pages deployment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether the Web Pages deployment is enabled. + true if the Web Pages deployment is enabled; otherwise, false. + The path to the Web Pages deployment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates whether the Web Pages deployment is explicitly disabled. + true if the Web Pages deployment is explicitly disabled; otherwise, false. + The path to the Web Pages deployment. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Razor.dll b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Razor.dll new file mode 100644 index 0000000..c4c8c7f Binary files /dev/null and b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Razor.dll differ diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Razor.xml b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Razor.xml new file mode 100644 index 0000000..bf64555 --- /dev/null +++ b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.Razor.xml @@ -0,0 +1,292 @@ + + + + System.Web.WebPages.Razor + + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the base class for the compiling path that contains event data. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The string of virtual path. + The host for the webpage razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the host for the webpage razor. + The host for the webpage razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the virtual path for the webpage. + The virtual path for the webpage. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a build provider for Razor. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds a virtual path dependency to the collection. + A virtual path dependency to add. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the assembly builder for Razor environment. + The assembly builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the compiler settings for Razor environment. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Occurs when code generation is completed. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Occurs when code generation is started. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Occurs when compiling with a new virtual path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a Razor engine host instance base on web configuration. + A Razor engine host instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Generates the code using the provided assembly builder. + The assembly builder. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the type of the generated code. + The type of the generated code. + The results of the code compilation. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates the Razor engine host instance based on the web configuration. + The Razor engine host instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Opens an internal text reader. + An internal text reader. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Raises the CompilingPath event. + The data provided for the CompilingPath event. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the virtual path of the source code. + The virtual path of the source code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the collection of virtual path for the dependencies. + The collection of virtual path for the dependencies. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a web code razor host for the web pages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The virtual path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The virtual path. + The physical path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns the class name of this instance. + The class name of this instance. + The virtual path. + + + Generates a post process code for the web code razor host. + The generator code context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the razor hosts in a webpage. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class with the specified virtual file path. + The virtual file path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class with the specified virtual and physical file path. + The virtual file path. + The physical file path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds a global import on the webpage. + The notification service name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the . + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a markup parser. + A markup parser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value for the DefaultBaseClass. + A value for the DefaultBaseClass. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the name of the default class. + The name of the default class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value that indicates whether the debug compilation is set to default. + true if the debug compilation is set to default; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the base class of the default page. + The base class of the default page. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Retrieves the name of the class to which the specified webpage belongs. + The name of the class to which the specified webpage belongs. + The virtual file path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the code language specified in the webpage. + The code language specified in the webpage. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the global imports for the webpage. + The global imports for the webpage. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the file path of the instrumental source. + The file path of the instrumental source. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value that indicates whether the webpage is a special page. + true if the webpage is a special page; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the physical file system path of the razor host. + They physical file system path of the razor host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the generated code after the process. + The . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Registers the special file with the specified file name and base type name. + The file name. + The base type name. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Registers the special file with the specified file name and base type. + The file name. + The type of base file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the virtual file path. + The virtual file path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates instances of the host files. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Loads the service description information from the configuration file and applies it to the host. + The configuration. + The webpage razor host. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a default host with the specified virtual path. + A default host. + The virtual path of the file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a default host with the specified virtual and physical path. + A default host. + The virtual path of the file. + The physical file system path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a Razor host. + A razor host. + The virtual path to the target file. + The physical path to the target file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a host from the configuration. + A host from the configuration. + The virtual path to the target file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a host from the configuration. + A host from the configuration. + The virtual path of the file. + The physical file system path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a host from the configuration. + A host from the configuration. + The configuration. + The virtual path of the file. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Creates a host from the configuration. + A host from the configuration. + The configuration. + The virtual path of the file. + The physical file system path. + + + Provides configuration system support for the host configuration section. + + + Initializes a new instance of the class. + + + Gets or sets the host factory. + The host factory. + + + Represents the name of the configuration section for a Razor host environment. + + + Provides configuration system support for the pages configuration section. + + + Initializes a new instance of the class. + + + Gets or sets the collection of namespaces to add to Web Pages pages in the current application. + The collection of namespaces. + + + Gets or sets the name of the page base type class. + The name of the page base type class. + + + Represents the name of the configuration section for Razor pages. + + + Provides configuration system support for the system.web.webPages.razor configuration section. + + + Initializes a new instance of the class. + + + Represents the name of the configuration section for Razor Web section. Contains the static, read-only string "system.web.webPages.razor". + + + Gets or sets the host value for system.web.webPages.razor section group. + The host value. + + + Gets or sets the value of the pages element for the system.web.webPages.razor section. + The pages element value. + + + \ No newline at end of file diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.dll b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.dll new file mode 100644 index 0000000..06e2cd5 Binary files /dev/null and b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.dll differ diff --git a/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.xml b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.xml new file mode 100644 index 0000000..84699ef --- /dev/null +++ b/packages/Microsoft.AspNet.WebPages.3.2.4/lib/net45/System.Web.WebPages.xml @@ -0,0 +1,2706 @@ + + + + System.Web.WebPages + + + + Helps prevent malicious scripts from submitting forged page requests. + + + Adds an authenticating token to a form to help protect against request forgery. + Returns a string that contains the encrypted token value in a hidden HTML field. + The current object is null. + + + Adds an authenticating token to a form to help protect against request forgery and lets callers specify authentication details. + Returns the encrypted token value in a hidden HTML field. + The HTTP context data for a request. + An optional string of random characters (such as Z*7g1&p4) that is used to add complexity to the encryption for extra safety. The default is null. + The domain of a web application that a request is submitted from. + The virtual root path of a web application that a request is submitted from. + + is null. + + + Gets the search tokens. + The previous cookie token. + The new cookie token. + The form of the token. + + + Validates that input data from an HTML form field comes from the user who submitted the data. + The current value is null. + The HTTP cookie token that accompanies a valid request is missing-or-The form token is missing.-or-The form token value does not match the cookie token value.-or-The form token value does not match the cookie token value. + + + Validates that input data from an HTML form field comes from the user who submitted the data. + The cookie token value. + The token form. + + + Validates that input data from an HTML form field comes from the user who submitted the data and lets callers specify additional validation details. + The HTTP context data for a request. + An optional string of random characters (such as Z*7g1&p4) that is used to decrypt an authentication token created by the class. The default is null. + The current value is null. + The HTTP cookie token that accompanies a valid request is missing.-or-The form token is missing.-or-The form token value does not match the cookie token value.-or-The form token value does not match the cookie token value.-or-The value supplied does not match the value that was used to create the form token. + + + Provides programmatic configuration for the anti-forgery token system. + + + Gets a data provider that can provide additional data to put into all generated tokens and that can validate additional data in incoming tokens. + The data provider. + + + Gets or sets the name of the cookie that is used by the anti-forgery system. + The cookie name. + + + Gets or sets a value that indicates whether the anti-forgery cookie requires SSL in order to be returned to the server. + true if SSL is required to return the anti-forgery cookie to the server; otherwise, false. + + + Gets or sets a value that indicates whether the anti-forgery system should skip checking for conditions that might indicate misuse of the system. + true if the anti-forgery system should not check for possible misuse; otherwise, false. + + + Specifies whether to suppress the generation of X-Frame-Options header which is used to prevent ClickJacking. By default, the X-Frame-Options header is generated with the value SAMEORIGIN. If this setting is 'true', the X-Frame-Options header will not be generated for the response. + + + If claims-based authorization is in use, gets or sets the claim type from the identity that is used to uniquely identify the user. + The claim type. + + + Provides a way to include or validate custom data for anti-forgery tokens. + + + Provides additional data to store for the anti-forgery tokens that are generated during this request. + The supplemental data to embed in the anti-forgery token. + Information about the current request. + + + Validates additional data that was embedded inside an incoming anti-forgery token. + true if the data is valid, or false if the data is invalid. + Information about the current request. + The supplemental data that was embedded in the token. + + + Provides access to unvalidated form values in the object. + + + Gets a collection of unvalidated form values that were posted from the browser. + An unvalidated collection of form values. + + + Gets the specified unvalidated object from the collection of posted values in the object. + The specified member, or null if the specified item is not found. + + + Gets a collection of unvalidated query-string values. + A collection of unvalidated query-string values. + + + Excludes fields of the Request object from being checked for potentially unsafe HTML markup and client script. + + + Returns a version of form values, cookies, and query-string variables without checking them first for HTML markup and client script. + An object that contains unvalidated versions of the form and query-string values. + The object that contains values to exclude from request validation. + + + Returns a value from the specified form field, cookie, or query-string variable without checking it first for HTML markup and client script. + A string that contains unvalidated text from the specified field, cookie, or query-string value. + The object that contains values to exclude from validation. + The name of the field to exclude from validation. can refer to a form field, to a cookie, or to the query-string variable. + + + Returns all values from the Request object (including form fields, cookies, and the query string) without checking them first for HTML markup and client script. + An object that contains unvalidated versions of the form, cookie, and query-string values. + The object that contains values to exclude from validation. + + + Returns the specified value from the Request object without checking it first for HTML markup and client script. + A string that contains unvalidated text from the specified field, cookie, or query-string value. + The object that contains values to exclude from validation. + The name of the field to exclude from validation. can refer to a form field, to a cookie, or to the query-string variable. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The containing message. + + + This member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The message. + The inner exception. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The error message. + The other. + + + + + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The error message. + The minimum value. + The maximum value. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. Initializes a new instance of the class. + The exception message. + The pattern. + + + Represents the remote rule for the validation of the model client. + + + Initializes a new instance of the class. + The error message. + The URL of the rule. + The HTTP method. + The additional fields used. + + + Represents the required rule for the validation of the model client. + + + Initializes a new instance of the class. + The error message + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a length of the validation rule of the model client. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The error message. + The minimum length of the validation rule. + The maximum length of the validation rule. + + + Contains classes and properties that are used to create HTML elements. This class is used to write helpers, such as those found in the namespace. + + + Creates a new tag that has the specified tag name. + The tag name without the "<", "/", or ">" delimiters. + + is null or empty. + + + Adds a CSS class to the list of CSS classes in the tag. + The CSS class to add. + + + Gets the collection of attributes. + The collection of attributes. + + + Replaces each invalid character in the tag ID with a valid HTML character. + The sanitized tag ID, or null if is null or empty, or if does not begin with a letter. + The ID that might contain characters to replace. + + + Replaces each invalid character in the tag ID with the specified replacement string. + The sanitized tag ID, or null if is null or empty, or if does not begin with a letter. + The ID that might contain characters to replace. + The replacement string. + + is null. + + + Generates a sanitized ID attribute for the tag by using the specified name. + The name to use to generate an ID attribute. + + + Gets or sets a string that can be used to replace invalid HTML characters. + The string to use to replace invalid HTML characters. + + + Gets or sets the inner HTML value for the element. + The inner HTML value for the element. + + + Adds a new attribute to the tag. + The key for the attribute. + The value of the attribute. + + + Adds a new attribute or optionally replaces an existing attribute in the opening tag. + The key for the attribute. + The value of the attribute. + true to replace an existing attribute if an attribute exists that has the specified value, or false to leave the original attribute unchanged. + + + Adds new attributes to the tag. + The collection of attributes to add. + The type of the key object. + The type of the value object. + + + Adds new attributes or optionally replaces existing attributes in the tag. + The collection of attributes to add or replace. + For each attribute in , true to replace the attribute if an attribute already exists that has the same key, or false to leave the original attribute unchanged. + The type of the key object. + The type of the value object. + + + Sets the property of the element to an HTML-encoded version of the specified string. + The string to HTML-encode. + + + Gets the tag name for this tag. + The name. + + + Renders the element as a element. + + + Renders the HTML tag by using the specified render mode. + The rendered HTML tag. + The render mode. + + + Enumerates the modes that are available for rendering HTML tags. + + + Represents the mode for rendering a closing tag (for example, </tag>). + + + Represents the mode for rendering normal text. + + + Represents the mode for rendering a self-closing tag (for example, <tag />). + + + Represents the mode for rendering an opening tag (for example, <tag>). + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the validation attributes from the structure or content of . + The to be implemented. + The result of the validation. + + + Contains methods to register assemblies as application parts. + + + Initializes a new instance of the class by using the specified assembly and root virtual path. + The assembly. + The root virtual path. + + is null or empty. + + + Resolves a path to the specified assembly or resource within an assembly by using the specified base virtual path and specified virtual path. + The path of the assembly or resource. + The assembly. + The base virtual path. + The virtual path. + + is not registered. + + + Adds an assembly and all web pages within the assembly to the list of available application parts. + The application part. + + is already registered. + + + Provides objects and methods that are used to execute and render ASP.NET Web Pages application start pages (_AppStart.cshtml or _AppStart.vbhtml files). + + + Initializes a new instance of the class. + + + Gets the HTTP application object that references this application startup page. + The HTTP application object that references this application startup page. + + + The prefix that is applied to all keys that are added to the cache by the application start page. + + + Gets the object that represents context data that is associated with this page. + The current context data. + + + Returns the text writer instance that is used to render the page. + The text writer. + + + Gets the output from the application start page as an HTML-encoded string. + The output from the application start page as an HTML-encoded string. + + + Gets the text writer for the page. + The text writer for the page. + + + The path to the application start page. + + + Gets or sets the virtual path of the page. + The virtual path. + + + Writes the string representation of the specified object as an HTML-encoded string. + The object to encode and write. + + + Writes the specified object as an HTML-encoded string. + The helper result to encode and write. + + + Writes the specified object without HTML encoding. + The object to write. + + + Stores the value for an attribute.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + Initializes a new instance of the class.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The namespace prefix for the attribute. + The value for the attribute. + true to indicate that the value is a literal value; otherwise, false. + + + Creates an attribute value from the specified tuple object. + The created attribute value. + The tuple object from which to create from. + + + Creates an attribute value from the specified tuple object. + The created attribute value. + The tuple object from which to create from. + + + Gets or sets a value that indicates whether the value is a literal value.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + true if the value is a literal value; otherwise, false. + + + Creates an attribute value from the specified tuple object. + The created attribute value. + The tuple object from which to create from. + + + Creates an attribute value from the specified tuple object. + The created attribute value. + The tuple object from which to create from. + + + Gets or sets the namespace prefix for the attribute.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The namespace prefix for the attribute. + + + Gets or set the value for the attribute.This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The value for the attribute. + + + Provides a way to specify custom browser (user agent) information. + + + Removes any overridden user agent for the current request. + The current context. + + + Returns the browser capabilities object for the overridden browser capabilities or for the actual browser if no override has been specified. + The browser capabilities. + The current context. + + + Returns the overridden user agent value or the actual user agent string if no override has been specified. + The user agent string + The current context. + + + Gets a string that varies based on the type of the browser. + A string that identifies the browser. + The current context. + + + Gets a string that varies based on the type of the browser. + A string that identifies the browser. + The current context base. + + + Overrides the request's actual user agent value using the specified user agent. + The current context. + The user agent to use. + + + Overrides the request's actual user agent value using the specified browser override information. + The current context. + One of the enumeration values that represents the browser override information to use. + + + Specifies browser types that can be defined for the method. + + + Specifies a desktop browser. + + + Specifies a mobile browser. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.The current BrowserOverrideStore is used to get and set the user agent of a request. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Looks for a user agent by searching for the browser override cookie. + The user agent. + The HTTP context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds a browser override cookie with the set user agent to the response of the current request. + The HTTP context. + The user agent. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets overridden user agent for a request from a cookie. Creates a cookie to set the overridden user agent. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The days to expire. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Looks for a user agent by searching for the browser override cookie. + The user agent. + The HTTP context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Adds a browser override cookie with the set user agent to the response of the current request. + The HTTP context. + The user agent. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the default display mode of the web pages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The suffix. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a value whether the can handle context. + true if the can handle context; otherwise, false. + The specified http context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value that indicates whether the context condition displays a default mode. + true if the context condition displays a default mode; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the display mode identifier of the web pages. + The display mode identifier of the web pages. + + + Retrieves the display information about an item in the result pane. + The display information about an item in the result pane. + The http context. + The virtual path. + true if the virtual path exists; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Transforms the path of the display mode. + The path of the display mode to transform. + The virtual path. + The suffix. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a property’s display information. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The virtual path. + The active display mode. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the active display mode for a Web page. + The active display mode for a Web page. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the virtual path of the current Web page. + The virtual path of the current Web page. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the modes of display for the provider. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the default display mode identifier. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a list of the available display modes for the context base. + A list of the available display modes for the context base. + The http context base. + The current display mode. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the for the virtual path. + The for the virtual path. + The virtual path. + The http context base. + true if the virtual path exists; otherwise, false. + The current display mode. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the instance of the . + The instance of the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the mobile display mode identifier. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a list of modes of the . + A list of modes of the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets a value that indicates whether the Web page requires consistent display mode. + true if the Web page requires consistent display mode; otherwise, false. + + + Represents a base class for pages that is used when ASP.NET compiles a .cshtml or .vbhtml file and that exposes page-level and application-level properties and methods. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + Gets the application-state data as a object that callers can use to create and access custom application-scoped properties. + The application-state data. + + + Gets a reference to global application-state data that can be shared across sessions and requests in an ASP.NET application. + The application-state data. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Puts all the helper statements into the context of the helper page. + The text writer. + The helper virtual path. + The starting position. + The length of the context. + true of the context has a literal attribute; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Puts all the helper statements into the context of the helper page. + The helper virtual path. + The starting position. + The length of the context. + true of the context has a literal attribute; otherwise, false. + + + Gets the cache object for the current application domain. + The cache object. + + + Gets the object that is associated with a page. + The current context data. + + + Gets the current page for this helper page. + The current page. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the end of context block. + The text writer. + The helper virtual path. + The starting position. + The length of the context. + true of the context has a literal attribute; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates the end of context block. + The helper virtual path. + The starting position. + The length of the context. + true of the context has a literal attribute; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the path of the helper page. + The path of the helper page. + + + Builds an absolute URL from an application-relative URL by using the specified parameters. + The absolute URL. + The initial path to use in the URL. + Additional path information, such as folders and subfolders. + + + Gets the object that is associated with a page. + An object that supports rendering HTML form controls in a page. + + + Gets a value that indicates whether Ajax is being used during the request of the web page. + true if Ajax is being used during the request; otherwise, false. + + + Gets a value that indicates whether the current request is a post (submitted using the HTTP POST verb). + true if the HTTP verb is POST; otherwise, false. + + + Gets the model that is associated with a page. + An object that represents a model that is associated with the view data for a page. + + + Gets the state data for the model that is associated with a page. + The state of the model. + + + Gets property-like access to page data that is shared between pages, layout pages, and partial pages. + An object that contains page data. + + + Gets and sets the HTTP context for the web page. + The HTTP context for the web page. + + + Gets array-like access to page data that is shared between pages, layout pages, and partial pages. + An object that provides array-like access to page data. + + + Gets the object for the current HTTP request. + An object that contains the HTTP values that were sent by a client during a web request. + + + Gets the object for the current HTTP response. + An object that contains the HTTP-response information from an ASP.NET operation. + + + Gets the object that provides methods that can be used as part of web-page processing. + The object. + + + Gets the object for the current HTTP request. + The object for the current HTTP request. + + + Gets data related to the URL path. + Data related to the URL path. + + + Gets a user value based on the HTTP context. + A user value based on the HTTP context. + + + Gets the virtual path of the page. + The virtual path. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Writes an attribute associated with the helper. + The text writer. + The name of the attribute. + The prefix. + The suffix. + The attribute value. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Writes a literal object to the helper. + The text writer. + The value of the object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Writes a helper result object to the helper. + The text writer + The helper result. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Writes an object to the helper. + The text writer. + The object value. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Writes a helper result object to the helper. + The text writer. + The helper result value. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents the display mode interface for the web pages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Indicates a value whether the web pages can handle HTTP context. + true if the web pages can handle HTTP context; otherwise, false. + The HTTP context. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the display mode id for the web pages. + The display mode id for the web pages. + + + Returns this method to display all the information for the web pages. + The method to display all the information for the web pages. + The HTTP context. + The virtual path. + true if the virtual path exists; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Defines the properties and methods that objects that participate in webpages. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a container for client validation for the required field. + A container for client validation for the required field. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Evaluates the condition it checks and updates the validation context. + The condition it checks and updates the validation context. + The validation context. + + + Defines methods that are implemented by virtual path handler factories. + + + Creates a handler factory for the specified virtual path. + A handler factory for the specified virtual path. + The virtual path. + + + Determines whether the specified virtual path is associated with a handler factory. + true if a handler factory exists for the specified virtual path; otherwise, false. + The virtual path. + + + Defines methods to implement an executor class that can execute the code on a web page. + + + Executes the code on the specified web page. + true if the executor took over execution of the web page; otherwise, false. + The web page. + + + Represents a path attribute for a web page class. + + + Initializes a new instance of the class by using the specified virtual path. + The virtual path. + + + Gets the virtual path of the current web page. + The virtual path. + + + Provides a registration point for pre-application start code for web pages. + + + Registers pre-application start code for web pages. + + + Defines extension methods for the class. + + + Determines whether the specified URL references the local computer. + true if the specified URL references the local computer; otherwise, false. + The HTTP request object. + The URL to test. + + + Serves as the abstract base class for the validation helper classes. + + + Initializes a new instance of the derived class and specifies the name of the HTML element that is being validated. + The name (value of the name attribute) of the user input element to validate. + + + Initializes a new instance of the derived class, registers the specified string as the error message to display if no value is supplied, and specifies whether the method can use unvalidated data. + The error message. + true to use unvalidated user input; false to reject unvalidated data. This parameter is set to true by calling methods in circumstances when the actual value of the user input is not important, such as for required fields. + + + When implemented in a derived class, gets a container for client validation for the required field. + The container. + + + Returns the HTTP context of the current request. + The context. + The validation context. + + + Returns the value to validate. + The value to validate. + The current request. + The name of the field from the current request to validate. + + + Returns a value that indicates whether the specified value is valid. + true if the value is valid; otherwise, false. + The current context. + The value to validate. + + + Performs the validation test. + The result of the validation test. + The context. + + + Defines extension methods for the base class. + + + Configures the cache policy of an HTTP response instance. + The HTTP response instance. + The length of time, in seconds, before items expire from the cache. + true to indicate that items expire from the cache on a sliding basis; false to indicate that items expire when they reach the predefined expiration time. + The list of all parameters that can be received by a GET or POST operation that affect caching. + The list of all HTTP headers that affect caching. + The list of all Content-Encoding headers that affect caching. + One of the enumeration values that specifies how items are cached. + + + Sets the HTTP status code of an HTTP response using the specified integer value. + The HTTP response instance. + The HTTP status code. + + + Sets the HTTP status code of an HTTP response using the specified HTTP status code enumeration value. + The HTTP response instance. + The HTTP status code + + + Writes a sequence of bytes that represent binary content of an unspecified type to the output stream of an HTTP response. + The HTTP response instance. + An array that contains the bytes to write. + + + Writes a sequence of bytes that represent binary content of the specified MIME type to the output stream of an HTTP response. + The receiving HTTP response instance. + An array that contains the bytes to write. + The MIME type of the binary content. + + + Provides a delegate that represents one or more methods that are called when a content section is written. + + + Provides methods and properties that are used to render start pages that use the Razor view engine. + + + Initializes a new instance of the class. + + + Gets or sets the child page of the current start page. + The child page of the current start page. + + + Gets or sets the context of the page. + The context of the page. + + + Calls the methods that are used to execute the developer-written code in the _PageStart start page and in the page. + + + Returns the text writer instance that is used to render the page. + The text writer. + + + Returns the initialization page for the specified page. + The _AppStart page if the _AppStart page exists. If the _AppStart page cannot be found, returns the _PageStart page if a _PageStart page exists. If the _AppStart and _PageStart pages cannot be found, returns . + The page. + The file name of the page. + The collection of file-name extensions that can contain ASP.NET Razor syntax, such as "cshtml" and "vbhtml". + Either or are null. + + is null or empty. + + + Gets or sets the path of the layout page for the page. + The path of the layout page for the page. + + + Gets property-like access to page data that is shared between pages, layout pages, and partial pages. + An object that contains page data. + + + Gets array-like access to page data that is shared between pages, layout pages, and partial pages. + An object that provides array-like access to page data. + + + Renders the page. + The HTML markup that represents the web page. + The path of the page to render. + Additional data that is used to render the page. + + + Executes the developer-written code in the page. + + + Writes the string representation of the specified object as an HTML-encoded string. + The object to encode and write. + + + Writes the string representation of the specified object as an HTML-encoded string. + The helper result to encode and write. + + + Writes the string representation of the specified object without HTML encoding. + The object to write. + + + Provides utility methods for converting string values to other data types. + + + Converts a string to a strongly typed value of the specified data type. + The converted value. + The value to convert. + The data type to convert to. + + + Converts a string to the specified data type and specifies a default value. + The converted value. + The value to convert. + The value to return if is null. + The data type to convert to. + + + Converts a string to a Boolean (true/false) value. + The converted value. + The value to convert. + + + Converts a string to a Boolean (true/false) value and specifies a default value. + The converted value. + The value to convert. + The value to return if is null or is an invalid value. + + + Converts a string to a value. + The converted value. + The value to convert. + + + Converts a string to a value and specifies a default value. + The converted value. + The value to convert. + The value to return if is null or is an invalid value. The default is the minimum time value on the system. + + + Converts a string to a number. + The converted value. + The value to convert. + + + Converts a string to a number and specifies a default value. + The converted value. + The value to convert. + The value to return if is null or invalid. + + + Converts a string to a number. + The converted value. + The value to convert. + + + Converts a string to a number and specifies a default value. + The converted value. + The value to convert. + The value to return if is null. + + + Converts a string to an integer. + The converted value. + The value to convert. + + + Converts a string to an integer and specifies a default value. + The converted value. + The value to convert. + The value to return if is null or is an invalid value. + + + Checks whether a string can be converted to the specified data type. + true if can be converted to the specified type; otherwise, false. + The value to test. + The data type to convert to. + + + Checks whether a string can be converted to the Boolean (true/false) type. + true if can be converted to the specified type; otherwise, false. + The string value to test. + + + Checks whether a string can be converted to the type. + true if can be converted to the specified type; otherwise, false. + The string value to test. + + + Checks whether a string can be converted to the type. + true if can be converted to the specified type; otherwise, false. + The string value to test. + + + Checks whether a string value is null or empty. + true if is null or is a zero-length string (""); otherwise, false. + The string value to test. + + + Checks whether a string can be converted to the type. + true if can be converted to the specified type; otherwise, false. + The string value to test. + + + Checks whether a string can be converted to an integer. + true if can be converted to the specified type; otherwise, false. + The string value to test. + + + Contains methods and properties that describe a file information template. + + + Initializes a new instance of the class by using the specified virtual path. + The virtual path. + + + Gets the virtual path of the web page. + The virtual path. + + + Represents a last-in-first-out (LIFO) collection of template files. + + + Returns the current template file from the specified HTTP context. + The template file, removed from the top of the stack. + The HTTP context that contains the stack that stores the template files. + + + Removes and returns the template file that is at the top of the stack in the specified HTTP context. + The template file, removed from the top of the stack. + The HTTP context that contains the stack that stores the template files. + + is null. + + + Inserts a template file at the top of the stack in the specified HTTP context. + The HTTP context that contains the stack that stores the template files. + The template file to push onto the specified stack. + + or are null. + + + Implements validation for user input. + + + Registers a list of user input elements for validation. + The names (value of the name attribute) of the user input elements to validate. + The type of validation to register for each user input element specified in . + + + Registers a user input element for validation. + The name (value of the name attribute) of the user input element to validate. + A list of one or more types of validation to register. + + + Adds an error message. + The error message. + + + Renders an attribute that references the CSS style definition to use when validation messages for the user input element are rendered. + The attribute. + The name (value of the name attribute) of the user input element to validate. + + + Renders attributes that enable client-side validation for an individual user input element. + The attributes to render. + The name (value of the name attribute) of the user input element to validate. + + + Gets the name of the current form. This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The name. + + + Returns a list of current validation errors, and optionally lets you specify a list of fields to check. + The list of errors. + Optional. The names (value of the name attribute) of the user input elements to get error information for. You can specify any number of element names, separated by commas. If you do not specify a list of fields, the method returns errors for all fields. + + + Gets the name of the class that is used to specify the appearance of error-message display when errors have occurred. This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The name. + + + Determines whether the contents of the user input fields pass validation checks, and optionally lets you specify a list of fields to check. + true if all specified field or fields pass validation checks; false if any field contains a validation error. + Optional. The names (value of the name attribute) of the user input elements to check for validation errors. You can specify any number of element names, separated by commas. If you do not specify a list of fields, the method checks all elements that are registered for validation. + + + Registers the specified field as one that requires user entry. + The name (value of the name attribute) of the user input element to validate. + + + Registers the specified field as one that requires user entry and registers the specified string as the error message to display if no value is supplied. + The name (value of the name attribute) of the user input element to validate. + The error message. + + + Registers the specified fields as ones that require user entry. + The names (value of the name attribute) of the user input elements to validate. You can specify any number of element names, separated by commas. + + + Performs validation on elements registered for validation, and optionally lets you specify a list of fields to check. + The list of errors for the specified fields, if any validation errors occurred. + Optional. The names (value of the name attribute) of the user input elements to validate. You can specify any number of element names, separated by commas. If you do not specify a list, the method validates all registered elements. + + + Gets the name of the class that is used to specify the appearance of error-message display when errors have occurred. This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + The name. + + + Defines validation tests that can be registered using the method. + + + Initializes a new instance of the class. + + + Defines a validation test that tests whether a value can be treated as a date/time value. + The validation test. + The error message to display if validation fails. + + + Defines a validation test that tests whether a value can be treated as a decimal number. + The validation test. + The error message to display if validation fails. + + + Defines a validation test that test user input against the value of another field. + The validation test. + The other field to compare. + The error message to display if validation fails. + + + Defines a validation test that tests whether a value can be treated as a floating-point number. + The validation test. + The error message to display if validation fails. + + + Defines a validation test that tests whether a value can be treated as an integer. + The validation test. + The error message to display if validation fails. + + + Defines a validation test that tests whether a decimal number falls within a specific range. + The validation test. + The minimum value. The default is 0. + The maximum value. + The error message to display if validation fails. + + + Defines a validation test that tests whether an integer value falls within a specific range. + The validation test. + The minimum value. The default is 0. + The maximum value. + The error message to display if validation fails. + + + Defines a validation test that tests a value against a pattern specified as a regular expression. + The validation test. + The regular expression to use to test the user input. + The error message to display if validation fails. + + + Defines a validation test that tests whether a value has been provided. + The validation test. + The error message to display if validation fails. + + + Defines a validation test that tests the length of a string. + The validation test. + The maximum length of the string. + The minimum length of the string. The default is 0. + The error message to display if validation fails. + + + Defines a validation test that tests whether a value is a well-formed URL. + The validation test. + The error message to display if validation fails. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code. + + + Represents an ASP.NET Razor page. + + + Called from a derived class to create a new instance that is based on the class. + + + Gets or sets the object that is associated with a page. + The current context data. + + + Executes the code in a set of dependent pages. + + + Gets the object that is associated with a page. + An object that can render HTML form controls in a page. + + + Initializes an object that inherits from the class. + + + Gets the model that is associated with a page. + An object that represents a model that is associated with the view data for a page. + + + Gets the state of the model that is associated with a page. + The state of the model. + + + Adds a class to a list of classes that handle page execution and that implement custom features for pages. + The class to add. + + + Renders a content page. + An object that can write the output of the page. + The path of the page to render. + Data to pass to the page. + + + Gets the validation helper for the current page context. + The validation helper. + + + Serves as the base class for classes that represent an ASP.NET Razor page. + + + Initializes the class for use by an inherited class instance. This constructor can only be called by an inherited class. + + + When overridden in a derived class, configures the current web page based on the configuration of the parent web page. + The parent page from which to read configuration information. + + + Creates a new instance of the class by using the specified virtual path. + The new object. + The virtual path to use to create the instance. + + + Attempts to create a WebPageBase instance from a virtualPath and wraps complex compiler exceptions with simpler messages + + + Called by content pages to create named content sections. + The name of the section to create. + The type of action to take with the new section. + + + Executes the code in a set of dependent web pages. + + + Executes the code in a set of dependent web pages by using the specified parameters. + The context data for the page. + The writer to use to write the executed HTML. + + + Executes the code in a set of dependent web pages by using the specified context, writer, and start page. + The context data for the page. + The writer to use to write the executed HTML. + The page to start execution in the page hierarchy. + + + Returns the text writer instance that is used to render the page. + The text writer. + + + Initializes the current page. + + + Returns a value that indicates whether the specified section is defined in the page. + true if the specified section is defined in the page; otherwise, false. + The name of the section to search for. + + + Gets or sets the path of a layout page. + The path of the layout page. + + + Gets the current object for the page. + The object. + + + Gets the stack of objects for the current page context. + The objects. + + + Provides property-like access to page data that is shared between pages, layout pages, and partial pages. + An object that contains page data. + + + Provides array-like access to page data that is shared between pages, layout pages, and partial pages. + A dictionary that contains page data. + + + Returns and removes the context from the top of the instance. + + + Inserts the specified context at the top of the instance. + The page context to push onto the instance. + The writer for the page context. + + + In layout pages, renders the portion of a content page that is not within a named section. + The HTML content to render. + + + Renders the content of one page within another page. + The HTML content to render. + The path of the page to render. + (Optional) An array of data to pass to the page being rendered. In the rendered page, these parameters can be accessed by using the property. + + + In layout pages, renders the content of a named section. + The HTML content to render. + The section to render. + The section was already rendered.-or-The section was marked as required but was not found. + + + In layout pages, renders the content of a named section and specifies whether the section is required. + The HTML content to render. + The section to render. + true to specify that the section is required; otherwise, false. + + + Writes the specified object as an HTML-encoded string. + The object to encode and write. + + + Writes the specified object as an HTML-encoded string. + The helper result to encode and write. + + + Writes the specified object without HTML-encoding it first. + The object to write. + + + Contains data that is used by a object to reference details about the web application, the current HTTP request, the current execution context, and page-rendering data. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified context, page, and model. + The HTTP request context data to associate with the page context. + The page data to share between pages, layout pages, and partial pages. + The model to associate with the view data. + + + Gets a reference to the current object that is associated with a page. + The current page context object. + + + Gets the model that is associated with a page. + An object that represents a model that is associated with the view data for a page. + + + Gets the object that is associated with a page. + The object that renders the page. + + + Gets the page data that is shared between pages, layout pages, and partial pages. + A dictionary that contains page data. + + + Provides objects and methods that are used to execute and render ASP.NET pages that include Razor syntax. + + + Initializes a new instance of the class. This constructor can only be called by an inherited class. + + + + + + + + + When overridden in a derived class, gets or sets the object that is associated with a page. + The current context data. + + + + + + + + Returns the text writer instance that is used to render the page. + The text writer. + + + + + + + + Writes the string representation of the specified object as an HTML-encoded string. + The object to encode and write. + + + Writes the specified object as an HTML-encoded string. + The helper result to encode and write. + + + + + + Writes the specified object without HTML encoding. + The object to write. + + + Writes the specified object to the specified instance without HTML encoding. + The text writer. + The object to write. + + + Writes the specified object as an HTML-encoded string to the specified text writer. + The text writer. + The object to encode and write. + + + Writes the specified object as an HTML-encoded string to the specified text writer. + The text writer. + The helper result to encode and write. + + + Provides methods and properties that are used to process specific URL extensions. + + + Initializes a new instance of the class by using the specified web page. + The web page to process. + + is null. + + + Creates a new handler object from the specified virtual path. + A object for the specified virtual path. + The virtual path to use to create the handler. + + + Gets or sets a value that indicates whether web page response headers are disabled. + true if web page response headers are disabled; otherwise, false. + + + Returns a list of file name extensions that the current instance can process. + A read-only list of file name extensions that are processed by the current instance. + + + Gets a value that indicates whether another request can use the instance. + true if the instance is reusable; otherwise, false. + + + Processes the web page by using the specified context. + The context to use when processing the web page. + + + Adds a file name extension to the list of extensions that are processed by the current instance. + The extension to add, without a leading period. + + + The HTML tag name (X-AspNetWebPages-Version) for the version of the ASP.NET Web Pages specification that is used by this web page. + + + Provides methods and properties that are used to render pages that use the Razor view engine. + + + Initializes a new instance of the class. + + + + + + When overridden in a derived class, calls the methods that are used to initialize the page. + + + + + When overridden in a derived class, gets or sets the path of a layout page. + The path of a layout page. + + + When overridden in a derived class, provides property-like access to page data that is shared between pages, layout pages, and partial pages. + An object that contains page data. + + + + When overridden in a derived class, provides array-like access to page data that is shared between pages, layout pages, and partial pages. + An object that provides array-like access to page data. + + + + When overridden in a derived class, renders a web page. + The markup that represents the web page. + The path of the page to render. + Additional data that is used to render the page. + + + + + + + + + + + Provides support for rendering HTML form controls and performing form validation in a web page. + + + Creates a dictionary of HTML attributes from the input object, translating underscores to dashes. + A dictionary that represents HTML attributes. + Anonymous object describing HTML attributes. + + + Returns an HTML-encoded string that represents the specified object by using a minimal encoding that is suitable only for HTML attributes that are enclosed in quotation marks. + An HTML-encoded string that represents the object. + The object to encode. + + + Returns an HTML-encoded string that represents the specified string by using a minimal encoding that is suitable only for HTML attributes that are enclosed in quotation marks. + An HTML-encoded string that represents the original string. + The string to encode. + + + Returns an HTML check box control that has the specified name. + The HTML markup that represents the check box control. + The value to assign to the name attribute of the HTML control element. + + is null or empty. + + + Returns an HTML check box control that has the specified name and default checked status. + The HTML markup that represents the check box control. + The value to assign to the name attribute of the HTML control element. + true to indicate that the checked attribute is set to checked; otherwise, false. + + is null or empty. + + + Returns an HTML check box control that has the specified name, default checked status, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the check box control. + The value to assign to the name attribute of the HTML control element. + true to indicate that the checked attribute is set to checked; otherwise, false. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML check box control that has the specified name, default checked status, and custom attributes defined by an attribute object. + The HTML markup that represents the check box control. + The value to assign to the name attribute of the HTML control element. + true to indicate that the checked attribute is set to checked; otherwise, false. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML check box control that has the specified name and custom attributes defined by an attribute dictionary. + The HTML markup that represents the check box control. + The value to assign to the name attribute of the HTML control element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML check box control that has the specified name and custom attributes defined by an attribute object. + The HTML markup that represents the check box control. + The value to assign to the name attribute of the HTML control element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name and that contains the specified list items. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + A list of instances that are used to populate the list. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name and custom attributes defined by an attribute dictionary, and that contains the specified list items. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + A list of instances that are used to populate the list. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name and custom attributes defined by an attribute object, and that contains the specified list items. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + A list of instances that are used to populate the list. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name, and that contains the specified list items and default item. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name and custom attributes defined by an attribute dictionary, and that contains the specified list items and default item. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name and custom attributes defined by an attribute object, and that contains the specified list items and default item. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name, custom attributes defined by an attribute dictionary, and default selection, and that contains the specified list items and default item. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + The value that specifies the item in the list that is selected by default. The selected item is the first item in the list whose value matches the parameter (or whose text matches, if there is no value.) + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML drop-down list control that has the specified name, custom attributes defined by an attribute object, and default selection, and that contains the specified list items and default item. + The HTML markup that represents the drop-down list control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + The value that specifies the item in the list that is selected by default. The item that is selected is the first item in the list that has a matching value, or that matches the items displayed text if the item has no value. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML-encoded string that represents the specified object by using a full encoding that is suitable for arbitrary HTML. + An HTML-encoded string that represents the object. + The object to encode. + + + Returns an HTML-encoded string that represents the specified string by using a full encoding that is suitable for arbitrary HTML. + An HTML-encoded string that represents the original string. + The string to encode. + + + Returns an HTML hidden control that has the specified name. + The HTML markup that represents the hidden control. + The value to assign to the name attribute of the HTML control element. + + is null or empty. + + + Returns an HTML hidden control that has the specified name and value. + The HTML markup that represents the hidden control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + + is null or empty. + + + Returns an HTML hidden control that has the specified name, value, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the hidden control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML hidden control that has the specified name, value, and custom attributes defined by an attribute object. + The HTML markup that represents the hidden control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Gets or sets the character that is used to replace the dot (.) in the id attribute of rendered form controls. + The character that is used to replace the dot in the id attribute of rendered form controls. The default is an underscore (_). + + + Returns an HTML label that displays the specified text. + The HTML markup that represents the label. + The text to display. + + is null or empty. + + + Returns an HTML label that displays the specified text and that has the specified custom attributes. + The HTML markup that represents the label. + The text to display. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML label that displays the specified text and that has the specified for attribute. + The HTML markup that represents the label. + The text to display. + The value to assign to the for attribute of the HTML control element. + + is null or empty. + + + Returns an HTML label that displays the specified text, and that has the specified for attribute and custom attributes defined by an attribute dictionary. + The HTML markup that represents the label. + The text to display. + The value to assign to the for attribute of the HTML control element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML label that displays the specified text, and that has the specified for attribute and custom attributes defined by an attribute object. + The HTML markup that represents the label. + The text to display. + The value to assign to the for attribute of the HTML control element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML list box control that has the specified name and that contains the specified list items. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + A list of instances that are used to populate the list. + + is null or empty. + + + Returns an HTML list box control that has the specified name and custom attributes defined by an attribute dictionary, and that contains the specified list items. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + A list of instances that are used to populate the list. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML list box control that has the specified name and custom attributes defined by an attribute object, and that contains the specified list items. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + A list of instances that are used to populate the list. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML list box control that has the specified name, size, list items, and default selections, and that specifies whether multiple selections are enabled. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + A list of instances that are used to populate the list. + An object that specifies the items in the list that are selected by default. The selections are retrieved through reflection by examining the properties of the object. + The value to assign to the size attribute of the element. + true to indicate that the multiple selections are enabled; otherwise, false. + + is null or empty. + + + Returns an HTML list box control that has the specified name, and that contains the specified list items and default item. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list box. + + is null or empty. + + + Returns an HTML list box control that has the specified name and custom attributes defined by an attribute dictionary, and that contains the specified list items and default item. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML list box control that has the specified name and custom attributes defined by an attribute object, and that contains the specified list items and default item. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list box. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML list box control that has the specified name and custom attributes defined by an attribute dictionary, and that contains the specified list items, default item, and selections. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + An object that specifies the items in the list that are selected by default. The selections are retrieved through reflection by examining the properties of the object. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML list box control that has the specified name, size, items, default item, and selections, and that specifies whether multiple selections are enabled. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + An object that specifies the items in the list that are selected by default. The selections are retrieved through reflection by examining the properties of the object. + The value to assign to the size attribute of the element. + true to indicate that multiple selections are enabled; otherwise, false. + + is null or empty. + + + Returns an HTML list box control that has the specified name, size, custom attributes defined by an attribute dictionary, items, default item, and selections, and that specifies whether multiple selections are enabled. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + An object that specifies the items in the list that are selected by default. The selections are retrieved through reflection by examining the properties of the object. + The value to assign to the size attribute of the element. + true to indicate that multiple selections are enabled; otherwise, false. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML list box control that has the specified name, size, custom attributes defined by an attribute object, items, default item, and selections, and that specifies whether multiple selections are enabled. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + An object that specifies the items in the list that are selected by default. The selections are retrieved through reflection by examining the properties of the object. + The value to assign to the size attribute of the element. + true to indicate that multiple selections are enabled; otherwise, false. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML list box control that has the specified name, items, default item, and custom attributes defined by an attribute object, and selections. + The HTML markup that represents the list box control. + The value to assign to the name attribute of the HTML select element. + The text to display for the default option in the list. + A list of instances that are used to populate the list. + An object that specifies the items in the list that are selected by default. The selections are retrieved through reflection by examining the properties of the object. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Creates a dictionary from an object, by adding each public instance property as a key with its associated value to the dictionary. It will expose public properties from derived types as well. This is typically used with objects of an anonymous type. + The created dictionary of property names and property values. + The object to be converted. + + + Returns an HTML password control that has the specified name. + The HTML markup that represents the password control. + The value to assign to the name attribute of the HTML control element. + + is null or empty. + + + Returns an HTML password control that has the specified name and value. + The HTML markup that represents the password control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + + is null or empty. + + + Returns an HTML password control that has the specified name, value, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the password control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML password control that has the specified name, value, and custom attributes defined by an attribute object. + The HTML markup that represents the password control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML radio button control that has the specified name and value. + The HTML markup that represents the radio button control. + The value to assign to the name attribute of the HTML control element. The name attribute defines the group that the radio button belongs to. + The value to assign to the value attribute of the element. + + is null or empty. + + + Returns an HTML radio button control that has the specified name, value, and default selected status. + The HTML markup that represents the radio button control. + The value to assign to the name attribute of the HTML control element. The name attribute defines the group that the radio button belongs to. + The value to assign to the value attribute of the element. + true to indicate that the control is selected; otherwise, false. + + is null or empty. + + + Returns an HTML radio button control that has the specified name, value, default selected status, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the radio button control. + The value to assign to the name attribute of the HTML control element. The name attribute defines the group that the radio button belongs to. + The value to assign to the value attribute of the element. + true to indicate that the control is selected; otherwise, false. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML radio button control that has the specified name, value, default selected status, and custom attributes defined by an attribute object. + The HTML markup that represents the radio button control. + The value to assign to the name attribute of the HTML control element. The name attribute defines the group that the radio button belongs to. + The value to assign to the value attribute of the element. + true to indicate that the control is selected; otherwise, false. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML radio button control that has the specified name, value, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the radio button control. + The value to assign to the name attribute of the HTML control element. The name attribute defines the group that the radio button belongs to. + The value to assign to the value attribute of the element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML radio button control that has the specified name, value, and custom attributes defined by an attribute object. + The HTML markup that represents the radio button control. + The value to assign to the name attribute of the HTML control element. The name attribute defines the group that the radio button belongs to. + The value to assign to the value attribute of the element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Wraps HTML markup in an instance so that it is interpreted as HTML markup. + The unencoded HTML. + The object to render HTML for. + + + Wraps HTML markup in an instance so that it is interpreted as HTML markup. + The unencoded HTML. + The string to interpret as HTML markup instead of being HTML-encoded. + + + Returns an HTML multi-line text input (text area) control that has the specified name. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textarea element. + + is null or empty. + + + Returns an HTML multi-line text input (text area) control that has the specified name and custom attributes defined by an attribute dictionary. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textarea element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML multi-line text input (text area) control that has the specified name and custom attributes defined by an attribute object. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textarea element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML multi-line text input (text area) control that has the specified name and value. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textrarea element. + The text to display. + + is null or empty. + + + Returns an HTML multi-line text input (text area) control that has the specified name, value, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textarea element. + The text to display. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML multi-line text input (text area) control that has the specified name, value, row attribute, col attribute, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textarea element. + The text to display. + The value to assign to the rows attribute of the element. + The value to assign to the cols attribute of the element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML multi-line text input (text area) control that has the specified name, value, row attribute, col attribute, and custom attributes defined by an attribute object. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textarea element. + The text to display. + The value to assign to the rows attribute of the element. + The value to assign to the cols attribute of the element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML multi-line text input (text area) control that has the specified name, value, and custom attributes defined by an attribute object. + The HTML markup that represents the text area control. + The value to assign to the name attribute of the HTML textarea element. + The text to display. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML text control that has the specified name. + The HTML markup that represents the text control. + The value to assign to the name attribute of the HTML control element. + + is null or empty. + + + Returns an HTML text control that has the specified name and value. + The HTML markup that represents the text control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + + is null or empty. + + + Returns an HTML text control that has the specified name, value, and custom attributes defined by an attribute dictionary. + The HTML markup that represents the text control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML text control that has the specified name, value, and custom attributes defined by an attribute object. + The HTML markup that represents the text control. + The value to assign to the name attribute of the HTML control element. + The value to assign to the value attribute of the element. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Gets or sets a value that indicates whether the page uses unobtrusive JavaScript for Ajax functionality. + true if the page uses unobtrusive JavaScript; otherwise, false. + + + Gets or sets the name of the CSS class that defines the appearance of input elements when validation fails. + The name of the CSS class. The default is field-validation-error. + + + Gets or sets the name of the CSS class that defines the appearance of input elements when validation passes. + The name of the CSS class. The default is input-validation-valid. + + + Returns an HTML span element that contains the first validation error message for the specified form field. + If the value in the specified field is valid, null; otherwise, the HTML markup that represents the validation error message that is associated with the specified field. + The name of the form field that was validated. + + is null or empty. + + + Returns an HTML span element that has the specified custom attributes defined by an attribute dictionary, and that contains the first validation error message for the specified form field. + If the value in the specified field is valid, null; otherwise, the HTML markup that represents the validation error message that is associated with the specified field. + The name of the form field that was validated. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML span element that has the specified custom attributes defined by an attribute object, and that contains the first validation error message for the specified form field. + If the value in the specified field is valid, null; otherwise, the HTML markup that represents the validation error message that is associated with the specified field. + The name of the form field that was validated. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Returns an HTML span element that contains a validation error message for the specified form field. + If the value in the specified field is valid, null; otherwise, the HTML markup that represents the validation error message that is associated with the specified field. + The name of the form field that was validated. + The validation error message to display. If null, the first validation error message that is associated with the specified form field is displayed. + + is null or empty. + + + Returns an HTML span element that has the specified custom attributes defined by an attribute dictionary, and that contains a validation error message for the specified form field. + If the specified field is valid, null; otherwise, the HTML markup that represents a validation error message that is associated with the specified field. + The name of the form field that was validated. + The validation error message to display. If null, the first validation error message that is associated with the specified form field is displayed. + The names and values of custom attributes for the element. + + is null or empty. + + + Returns an HTML span element that has the specified custom attributes defined by an attribute object, and that contains a validation error message for the specified form field. + If the specified field is valid, null; otherwise, the HTML markup that represents a validation error message that is associated with the specified field. + The name of the form field that was validated. + The validation error message to display. If null, the first validation error message that is associated with the specified form field is displayed. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + is null or empty. + + + Gets or sets the name of the CSS class that defines the appearance of validation error messages when validation fails. + The name of the CSS class. The default is field-validation-error. + + + Gets or sets the name of the CSS class that defines the appearance of validation error messages when validation passes. + The name of the CSS class. The default is field-validation-valid. + + + Returns an HTML div element that contains an unordered list of all validation error messages from the model-state dictionary. + The HTML markup that represents the validation error messages. + + + Returns an HTML div element that contains an unordered list of validation error message from the model-state dictionary, optionally excluding field-level errors. + The HTML markup that represents the validation error messages. + true to exclude field-level validation error messages from the list; false to include both model-level and field-level validation error messages. + + + Returns an HTML div element that has the specified custom attributes defined by an attribute dictionary, and that contains an unordered list of all validation error messages that are in the model-state dictionary. + The HTML markup that represents the validation error messages. + The names and values of custom attributes for the element. + + + Returns an HTML div element that has the specified custom attributes defined by an attribute object, and that contains an unordered list of all validation error messages that are in the model-state dictionary. + The HTML markup that represents the validation error messages. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + + Returns an HTML div element that contains a summary message and an unordered list of all validation error messages that are in the model-state dictionary. + The HTML markup that represents the validation error messages. + The message that comes before the list of validation error messages. + + + Returns an HTML div element that has the specified custom attributes defined by an attribute dictionary, and that contains a summary message and an unordered list of validation error message from the model-state dictionary, optionally excluding field-level errors. + The HTML markup that represents the validation error messages. + The summary message that comes before the list of validation error messages. + true to exclude field-level validation error messages from the results; false to include both model-level and field-level validation error messages. + The names and values of custom attributes for the element. + + + Returns an HTML div element that has the specified custom attributes defined by an attribute object, and that contains a summary message and an unordered list of validation error message from the model-state dictionary, optionally excluding field-level errors. + The HTML markup that represents the validation error messages. + The summary message that comes before the list of validation error messages. + true to exclude field-level validation error messages from the results; false to include and field-level validation error messages. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + + Returns an HTML div element that has the specified custom attributes defined by an attribute dictionary, and that contains a summary message and an unordered list of all validation error message from the model-state dictionary. + The HTML markup that represents the validation error messages. + The message that comes before the list of validation error messages. + The names and values of custom attributes for the element. + + + Returns an HTML div element that has the specified custom attributes defined by an attribute object, and that contains a summary message and an unordered list of all validation error message from the model-state dictionary. + The HTML markup that represents the validation error messages. + The summary message that comes before the list of validation error messages. + An object that contains custom attributes for the element. The attribute names and values are retrieved through reflection by examining the properties of the object. + + + Gets or sets the name of the CSS class that defines the appearance of a validation summary when validation fails. + The name of the CSS class. The default is validation-summary-errors. + + + Gets or sets the name of the CSS class that defines the appearance of a validation summary when validation passes. + The name of the CSS class. The default is validation-summary-valid. + + + Encapsulates the state of model binding to a property of an action-method argument, or to the argument itself. + + + Initializes a new instance of the class. + + + Returns a list of strings that contains any errors that occurred during model binding. + The errors that occurred during model binding. + + + Returns an object that encapsulates the value that was bound during model binding. + The value that was bound. + + + Represents the result of binding a posted form to an action method, which includes information such as validation status and validation error messages. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using values that are copied from the specified model-state dictionary. + The model-state dictionary that values are copied from. + + + Adds the specified item to the model-state dictionary. + The item to add to the model-state dictionary. + + + Adds an item that has the specified key and value to the model-state dictionary. + The key. + The value. + + + Adds an error message to the model state that is associated with the specified key. + The key that is associated with the model state that the error message is added to. + The error message. + + + Adds an error message to the model state that is associated with the entire form. + The error message. + + + Removes all items from the model-state dictionary. + + + Determines whether the model-state dictionary contains the specified item. + true if the model-state dictionary contains the specified item; otherwise, false. + The item to look for. + + + Determines whether the model-state dictionary contains the specified key. + true if the model-state dictionary contains the specified key; otherwise, false. + The key to look for. + + + Copies the elements of the model-state dictionary to an array, starting at the specified index. + The one-dimensional instance where the elements will be copied to. + The index in at which copying begins. + + + Gets the number of model states that the model-state dictionary contains. + The number of model states in the model-state dictionary. + + + Returns an enumerator that can be used to iterate through the collection. + An enumerator that can be used to iterate through the collection. + + + Gets a value that indicates whether the model-state dictionary is read-only. + true if the model-state dictionary is read-only; otherwise, false. + + + Gets a value that indicates whether any error messages are associated with any model state in the model-state dictionary. + true if any error messages are associated with any model state in the dictionary; otherwise, false. + + + Determines whether any error messages are associated with the specified key. + true if no error messages are associated with the specified key, or the specified key does not exist; otherwise, false. + The key. + + is null. + + + Gets or sets the model state that is associated with the specified key in the model-state dictionary. + The model state that is associated with the specified key in the dictionary. + + + Gets a list that contains the keys in the model-state dictionary. + The list of keys in the dictionary. + + + Copies the values from the specified model-state dictionary into this instance, overwriting existing values when the keys are the same. + The model-state dictionary that values are copied from. + + + Removes the first occurrence of the specified item from the model-state dictionary. + true if the item was successfully removed from the model-state dictionary; false if the item was not removed or if the item does not exist in the model-state dictionary. + The item to remove. + + + Removes the item that has the specified key from the model-state dictionary. + true if the item was successfully removed from the model-state dictionary; false if the item was not removed or does not exist in the model-state dictionary. + The key of the element to remove. + + + Sets the value of the model state that is associated with the specified key. + The key to set the value of. + The value to set the key to. + + + Returns an enumerator that can be used to iterate through the model-state dictionary. + An enumerator that can be used to iterate through the model-state dictionary. + + + Gets the model-state value that is associated with the specified key. + true if the model-state dictionary contains an element that has the specified key; otherwise, false. + The key to get the value of. + When this method returns, if the key is found, contains the model-state value that is associated with the specified key; otherwise, contains the default value for the type. This parameter is passed uninitialized. + + + Gets a list that contains the values in the model-state dictionary. + The list of values in the dictionary. + + + Represents an item in an HTML select list. + + + Initializes a new instance of the class using the default settings. + + + Initializes a new instance of the class by copying the specified select list item. + The select list item to copy. + + + Gets or sets a value that indicates whether the instance is selected. + true if the select list item is selected; otherwise, false. + + + Gets or sets the text that is used to display the instance on a web page. + The text that is used to display the select list item. + + + Gets or sets the value of the HTML value attribute of the HTML option element that is associated with the instance. + The value of the HTML value attribute that is associated with the select list item. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a web pages instrumentation service. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Called before it renders the output for the specified context. + The context. + The virtual path. + The writer. + The start position. + The length of the context. + Determines whether the context is literal. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Called after it renders the output for the specified context. + The context. + The virtual path. + The writer. + The start position. + The length of the context. + Determines whether the context is literal. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets a value indicating whether the service is available. + true if the service is available; otherwise, false. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Represents a position tagged. + The type of the position.. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Initializes a new instance of the class. + The value of this current instance. + The offset. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare to. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets the hash code of the current instance. + The hash code of the current instance. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two objects are equal. + true if the two objects are equal; otherwise, false. + The first object. + The second object. + + + Converts the specified object to a object. + The that represents the converted . + The object to convert. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Converts the to a object. + The that represents the converted . + The object to convert. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Determines whether the two objects are not equal. + true if the two objects are not equal; otherwise, false. + The first object. + The second object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the position associated with the . + The position associated with the . + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Returns a string representation of the object. + A string that represents the object. + + + This type/member supports the .NET Framework infrastructure and is not intended to be used directly from your code.Gets or sets the value of the current instance. + The value of the current instance. + + + Defines an ASP.NET request scope storage provider. + + + Initializes a new instance of the class. + + + Gets the dictionary to store data in the application scope. + The dictionary that stores application scope data. + + + Gets or sets the dictionary to store data in the current scope. + The dictionary that stores current scope data. + + + Gets the dictionary to store data in the global scope. + The dictionary that stores global scope data. + + + Gets the dictionary to store data in the request scope. + The dictionary that stores request scope data. + + + Defines a dictionary that provides scoped access to data. + + + Gets and sets the dictionary that is used to store data in the current scope. + The dictionary that stores current scope data. + + + Gets the dictionary that is used to store data in the global scope. + The dictionary that stores global scope data. + + + Defines a class that is used to contain storage for a transient scope. + + + Returns a dictionary that is used to store data in a transient scope, based on the scope in the property. + The dictionary that stores transient scope data. + + + Returns a dictionary that is used to store data in a transient scope. + The dictionary that stores transient scope data. + The context. + + + Gets or sets the current scope provider. + The current scope provider. + + + Gets the dictionary that is used to store data in the current scope. + The dictionary that stores current scope data. + + + Gets the dictionary that is used to store data in the global scope. + The dictionary that stores global scope data. + + + Represents a collection of keys and values that are used to store data at different scope levels (local, global, and so on). + + + Initializes a new instance of the class. + + + Initializes a new instance of the class using the specified base scope. + The base scope. + + + Adds a key/value pair to the object using the specified generic collection. + The key/value pair. + + + Adds the specified key and specified value to the object. + The key. + The value. + + + Gets the dictionary that stores the object data. + + + Gets the base scope for the object. + The base scope for the object. + + + Removes all keys and values from the concatenated and objects. + + + Returns a value that indicates whether the specified key/value pair exists in either the object or in the object. + true if the object or the object contains an element that has the specified key/value pair; otherwise, false. + The key/value pair. + + + Returns a value that indicates whether the specified key exists in the object or in the object. + true if the object or the object contains an element that has the specified key; otherwise, false. + The key. + + + Copies all of the elements in the object and the object to an object, starting at the specified index. + The array. + The zero-based index in . + + + Gets the number of key/value pairs that are in the concatenated and objects. + The number of key/value pairs. + + + Returns an enumerator that can be used to iterate through concatenated and objects. + An object. + + + Returns an enumerator that can be used to iterate through the distinct elements of concatenated and objects. + An enumerator that contains distinct elements from the concatenated dictionary objects. + + + Gets a value that indicates whether the object is read-only. + true if the object is read-only; otherwise, false. + + + Gets or sets the element that is associated with the specified key. + The element that has the specified key. + + + Gets a object that contains the keys from the concatenated and objects. + An object that contains that contains the keys. + + + Removes the specified key/value pair from the concatenated and objects. + true if the key/value pair is removed, or false if is not found in the concatenated and objects. + The key/value pair. + + + Removes the value that has the specified key from the concatenated and objects. + true if the key/value pair is removed, or false if is not found in the concatenated and objects. + The key. + + + Sets a value using the specified key in the concatenated and objects. + The key. + The value. + + + Returns an enumerator for the concatenated and objects. + The enumerator. + + + Gets the value that is associated with the specified key from the concatenated and objects. + true if the concatenated and objects contain an element that has the specified key; otherwise, false. + The key. + When this method returns, if the key is found, contains the value that is associated with the specified key; otherwise, the default value for the type of the parameter. This parameter is passed uninitialized. + + + Gets a object that contains the values from the concatenated and objects. + The object that contains the values. + + + Provides scoped access to static data. + + + Initializes a new instance of the class. + + + Gets or sets a dictionary that stores current data under a static context. + The dictionary that provides current scoped data. + + + Gets a dictionary that stores global data under a static context. + The dictionary that provides global scoped data. + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/.signature.p7s b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/.signature.p7s new file mode 100644 index 0000000..2605c3a Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/.signature.p7s differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0.nupkg b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0.nupkg new file mode 100644 index 0000000..8bf27b1 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0.nupkg differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.Extensions.props b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.Extensions.props new file mode 100644 index 0000000..46eea2d --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.Extensions.props @@ -0,0 +1,5 @@ + + + $(MSBuildThisFileDirectory)..\..\tools\roslyn45 + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props new file mode 100644 index 0000000..7f78df9 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props @@ -0,0 +1,105 @@ + + + + + + roslyn\%(RecursiveDir)%(Filename)%(Extension) + + + + + + bin\roslyn\%(RecursiveDir)%(Filename)%(Extension) + IncludeRoslynCompilerFilesToFilesForPackagingFromProject + Run + + + + + + $(WebProjectOutputDir)\bin\roslyn + $(OutputPath)\roslyn + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ().FirstOrDefault(); + Log.LogMessage("ExecutablePath is {0}", (string)mo["ExecutablePath"]); + if(mo != null && ((string)mo["ExecutablePath"]).StartsWith(ImagePath, StringComparison.OrdinalIgnoreCase)) + { + p.Kill(); + p.WaitForExit(); + Log.LogMessage("{0} is killed", (string)mo["ExecutablePath"]); + break; + } + } + } + } + } + catch (Exception ex) + { + Log.LogErrorFromException(ex); + } + return true; + ]]> + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net46/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.Extensions.props b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net46/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.Extensions.props new file mode 100644 index 0000000..d53a81a --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net46/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.Extensions.props @@ -0,0 +1,5 @@ + + + $(MSBuildThisFileDirectory)..\..\tools\roslynlatest + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net46/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net46/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props new file mode 100644 index 0000000..7f78df9 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/build/net46/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props @@ -0,0 +1,105 @@ + + + + + + roslyn\%(RecursiveDir)%(Filename)%(Extension) + + + + + + bin\roslyn\%(RecursiveDir)%(Filename)%(Extension) + IncludeRoslynCompilerFilesToFilesForPackagingFromProject + Run + + + + + + $(WebProjectOutputDir)\bin\roslyn + $(OutputPath)\roslyn + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ().FirstOrDefault(); + Log.LogMessage("ExecutablePath is {0}", (string)mo["ExecutablePath"]); + if(mo != null && ((string)mo["ExecutablePath"]).StartsWith(ImagePath, StringComparison.OrdinalIgnoreCase)) + { + p.Kill(); + p.WaitForExit(); + Log.LogMessage("{0} is killed", (string)mo["ExecutablePath"]); + break; + } + } + } + } + } + catch (Exception ex) + { + Log.LogErrorFromException(ex); + } + return true; + ]]> + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/app.config.install.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/app.config.install.xdt new file mode 100644 index 0000000..e8a4852 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/app.config.install.xdt @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/app.config.uninstall.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/app.config.uninstall.xdt new file mode 100644 index 0000000..38e9649 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/app.config.uninstall.xdt @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/web.config.install.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/web.config.install.xdt new file mode 100644 index 0000000..612949e --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/web.config.install.xdt @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/web.config.uninstall.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/web.config.uninstall.xdt new file mode 100644 index 0000000..5733481 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net45/web.config.uninstall.xdt @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/app.config.install.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/app.config.install.xdt new file mode 100644 index 0000000..f930372 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/app.config.install.xdt @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/app.config.uninstall.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/app.config.uninstall.xdt new file mode 100644 index 0000000..38e9649 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/app.config.uninstall.xdt @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/web.config.install.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/web.config.install.xdt new file mode 100644 index 0000000..ec78da9 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/web.config.install.xdt @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/web.config.uninstall.xdt b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/web.config.uninstall.xdt new file mode 100644 index 0000000..5733481 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/content/net46/web.config.uninstall.xdt @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/lib/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/lib/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll new file mode 100644 index 0000000..3a817a9 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/lib/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/lib/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.xml b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/lib/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.xml new file mode 100644 index 0000000..1a49351 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/lib/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.xml @@ -0,0 +1,40 @@ + + + + Microsoft.CodeDom.Providers.DotNetCompilerPlatform + + + + + Provides access to instances of the .NET Compiler Platform C# code generator and code compiler. + + + + + Default Constructor + + + + + Gets an instance of the .NET Compiler Platform C# code compiler. + + An instance of the .NET Compiler Platform C# code compiler + + + + Provides access to instances of the .NET Compiler Platform VB code generator and code compiler. + + + + + Default Constructor + + + + + Gets an instance of the .NET Compiler Platform VB code compiler. + + An instance of the .NET Compiler Platform VB code compiler + + + diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.Build.Tasks.CodeAnalysis.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.Build.Tasks.CodeAnalysis.dll new file mode 100644 index 0000000..2fd00f1 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.Build.Tasks.CodeAnalysis.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CSharp.Core.targets b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CSharp.Core.targets new file mode 100644 index 0000000..faeeafe --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CSharp.Core.targets @@ -0,0 +1,145 @@ + + + + + $(NoWarn);1701;1702 + + + + + $(NoWarn);2008 + + + + + + + + + + + $(AppConfig) + + + $(IntermediateOutputPath)$(TargetName).compile.pdb + + + + + false + + + + + + + + + true + + + + + + + + + <_CoreCompileResourceInputs Remove="@(_CoreCompileResourceInputs)" /> + + + + + diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.CSharp.Scripting.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.CSharp.Scripting.dll new file mode 100644 index 0000000..3c8176d Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.CSharp.Scripting.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.CSharp.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.CSharp.dll new file mode 100644 index 0000000..20ab202 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.CSharp.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.Scripting.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.Scripting.dll new file mode 100644 index 0000000..ef574bb Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.Scripting.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.VisualBasic.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.VisualBasic.dll new file mode 100644 index 0000000..c101e41 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.VisualBasic.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.dll new file mode 100644 index 0000000..c7d4fb8 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.CodeAnalysis.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.DiaSymReader.Native.amd64.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.DiaSymReader.Native.amd64.dll new file mode 100644 index 0000000..42e0830 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.DiaSymReader.Native.amd64.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.DiaSymReader.Native.x86.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.DiaSymReader.Native.x86.dll new file mode 100644 index 0000000..d8d752d Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.DiaSymReader.Native.x86.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.VisualBasic.Core.targets b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.VisualBasic.Core.targets new file mode 100644 index 0000000..949748e --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/Microsoft.VisualBasic.Core.targets @@ -0,0 +1,142 @@ + + + + <_NoWarnings Condition=" '$(WarningLevel)' == '0' ">true + <_NoWarnings Condition=" '$(WarningLevel)' == '1' ">false + + + + + $(IntermediateOutputPath)$(TargetName).compile.pdb + + + + + + + + + + + false + + + + + + + + + true + + + + + + + + <_CoreCompileResourceInputs Remove="@(_CoreCompileResourceInputs)" /> + + + + + diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.AppContext.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.AppContext.dll new file mode 100644 index 0000000..5cb9dfb Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.AppContext.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Collections.Immutable.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Collections.Immutable.dll new file mode 100644 index 0000000..6fc2d69 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Collections.Immutable.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Diagnostics.StackTrace.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Diagnostics.StackTrace.dll new file mode 100644 index 0000000..2edee66 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Diagnostics.StackTrace.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.IO.FileSystem.Primitives.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.IO.FileSystem.Primitives.dll new file mode 100644 index 0000000..c2273cf Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.IO.FileSystem.Primitives.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.IO.FileSystem.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.IO.FileSystem.dll new file mode 100644 index 0000000..62e14c6 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.IO.FileSystem.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Reflection.Metadata.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Reflection.Metadata.dll new file mode 100644 index 0000000..1c97714 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/System.Reflection.Metadata.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/VBCSCompiler.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/VBCSCompiler.exe new file mode 100644 index 0000000..3aa8e11 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/VBCSCompiler.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/VBCSCompiler.exe.config b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/VBCSCompiler.exe.config new file mode 100644 index 0000000..6a1235f --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/VBCSCompiler.exe.config @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.exe new file mode 100644 index 0000000..7077f16 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.exe.config b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.exe.config new file mode 100644 index 0000000..21681d9 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.exe.config @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.rsp b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.rsp new file mode 100644 index 0000000..ce72ac6 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csc.rsp @@ -0,0 +1,46 @@ +# Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +# This file contains command-line options that the C# +# command line compiler (CSC) will process as part +# of every compilation, unless the "/noconfig" option +# is specified. + +# Reference the common Framework libraries +/r:Accessibility.dll +/r:Microsoft.CSharp.dll +/r:System.Configuration.dll +/r:System.Configuration.Install.dll +/r:System.Core.dll +/r:System.Data.dll +/r:System.Data.DataSetExtensions.dll +/r:System.Data.Linq.dll +/r:System.Data.OracleClient.dll +/r:System.Deployment.dll +/r:System.Design.dll +/r:System.DirectoryServices.dll +/r:System.dll +/r:System.Drawing.Design.dll +/r:System.Drawing.dll +/r:System.EnterpriseServices.dll +/r:System.Management.dll +/r:System.Messaging.dll +/r:System.Runtime.Remoting.dll +/r:System.Runtime.Serialization.dll +/r:System.Runtime.Serialization.Formatters.Soap.dll +/r:System.Security.dll +/r:System.ServiceModel.dll +/r:System.ServiceModel.Web.dll +/r:System.ServiceProcess.dll +/r:System.Transactions.dll +/r:System.Web.dll +/r:System.Web.Extensions.Design.dll +/r:System.Web.Extensions.dll +/r:System.Web.Mobile.dll +/r:System.Web.RegularExpressions.dll +/r:System.Web.Services.dll +/r:System.Windows.Forms.dll +/r:System.Workflow.Activities.dll +/r:System.Workflow.ComponentModel.dll +/r:System.Workflow.Runtime.dll +/r:System.Xml.dll +/r:System.Xml.Linq.dll diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csi.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csi.exe new file mode 100644 index 0000000..4174a21 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csi.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csi.rsp b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csi.rsp new file mode 100644 index 0000000..96e81d8 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/csi.rsp @@ -0,0 +1,13 @@ +/r:System +/r:System.Core +/r:Microsoft.CSharp +/u:System +/u:System.IO +/u:System.Collections.Generic +/u:System.Console +/u:System.Diagnostics +/u:System.Dynamic +/u:System.Linq +/u:System.Linq.Expressions +/u:System.Text +/u:System.Threading.Tasks \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.exe new file mode 100644 index 0000000..3454d6a Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.exe.config b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.exe.config new file mode 100644 index 0000000..21681d9 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.exe.config @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.rsp b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.rsp new file mode 100644 index 0000000..8350880 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/Roslyn45/vbc.rsp @@ -0,0 +1,55 @@ +# Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +# This file contains command-line options that the VB +# command line compiler (VBC) will process as part +# of every compilation, unless the "/noconfig" option +# is specified. + +# Reference the common Framework libraries +/r:Accessibility.dll +/r:System.Configuration.dll +/r:System.Configuration.Install.dll +/r:System.Data.dll +/r:System.Data.OracleClient.dll +/r:System.Deployment.dll +/r:System.Design.dll +/r:System.DirectoryServices.dll +/r:System.dll +/r:System.Drawing.Design.dll +/r:System.Drawing.dll +/r:System.EnterpriseServices.dll +/r:System.Management.dll +/r:System.Messaging.dll +/r:System.Runtime.Remoting.dll +/r:System.Runtime.Serialization.Formatters.Soap.dll +/r:System.Security.dll +/r:System.ServiceProcess.dll +/r:System.Transactions.dll +/r:System.Web.dll +/r:System.Web.Mobile.dll +/r:System.Web.RegularExpressions.dll +/r:System.Web.Services.dll +/r:System.Windows.Forms.dll +/r:System.XML.dll + +/r:System.Workflow.Activities.dll +/r:System.Workflow.ComponentModel.dll +/r:System.Workflow.Runtime.dll +/r:System.Runtime.Serialization.dll +/r:System.ServiceModel.dll + +/r:System.Core.dll +/r:System.Xml.Linq.dll +/r:System.Data.Linq.dll +/r:System.Data.DataSetExtensions.dll +/r:System.Web.Extensions.dll +/r:System.Web.Extensions.Design.dll +/r:System.ServiceModel.Web.dll + +# Import System and Microsoft.VisualBasic +/imports:System +/imports:Microsoft.VisualBasic +/imports:System.Linq +/imports:System.Xml.Linq + +/optioninfer+ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.Build.Tasks.CodeAnalysis.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.Build.Tasks.CodeAnalysis.dll new file mode 100644 index 0000000..3bf3618 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.Build.Tasks.CodeAnalysis.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CSharp.Core.targets b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CSharp.Core.targets new file mode 100644 index 0000000..6f4fb6c --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CSharp.Core.targets @@ -0,0 +1,135 @@ + + + + + + + + + $(NoWarn);1701;1702 + + + + + $(NoWarn);2008 + + + + + $(AppConfig) + + + $(IntermediateOutputPath)$(TargetName).compile.pdb + + + + + + + + + <_CoreCompileResourceInputs Remove="@(_CoreCompileResourceInputs)" /> + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.CSharp.Scripting.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.CSharp.Scripting.dll new file mode 100644 index 0000000..64dccd9 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.CSharp.Scripting.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.CSharp.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.CSharp.dll new file mode 100644 index 0000000..5bc2c36 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.CSharp.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.Scripting.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.Scripting.dll new file mode 100644 index 0000000..9532a7f Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.Scripting.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.VisualBasic.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.VisualBasic.dll new file mode 100644 index 0000000..95276b8 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.VisualBasic.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.dll new file mode 100644 index 0000000..24009d3 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.CodeAnalysis.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.DiaSymReader.Native.amd64.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.DiaSymReader.Native.amd64.dll new file mode 100644 index 0000000..e376a20 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.DiaSymReader.Native.amd64.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.DiaSymReader.Native.x86.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.DiaSymReader.Native.x86.dll new file mode 100644 index 0000000..5ebef7f Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.DiaSymReader.Native.x86.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.Managed.Core.targets b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.Managed.Core.targets new file mode 100644 index 0000000..73ade88 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.Managed.Core.targets @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + + + + true + + + + + + true + + + + + + + + <_MappedSourceRoot Remove="@(_MappedSourceRoot)" /> + + + + + + + + + + + + + + + true + + + + + + + + + + + <_TopLevelSourceRoot Include="@(SourceRoot)" Condition="'%(SourceRoot.NestedRoot)' == ''"/> + + + + + + + ,$(PathMap) + + + @(_TopLevelSourceRoot->'%(Identity)=%(MappedPath)', ',')$(PathMap) + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.VisualBasic.Core.targets b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.VisualBasic.Core.targets new file mode 100644 index 0000000..2e7cd91 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/Microsoft.VisualBasic.Core.targets @@ -0,0 +1,132 @@ + + + + + + + + <_NoWarnings Condition="'$(WarningLevel)' == '0'">true + <_NoWarnings Condition="'$(WarningLevel)' == '1'">false + + + + + $(IntermediateOutputPath)$(TargetName).compile.pdb + + + + + + + + <_CoreCompileResourceInputs Remove="@(_CoreCompileResourceInputs)" /> + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.AppContext.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.AppContext.dll new file mode 100644 index 0000000..5cb9dfb Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.AppContext.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Collections.Immutable.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Collections.Immutable.dll new file mode 100644 index 0000000..ce6fc0e Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Collections.Immutable.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Console.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Console.dll new file mode 100644 index 0000000..f47e609 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Console.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Diagnostics.FileVersionInfo.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Diagnostics.FileVersionInfo.dll new file mode 100644 index 0000000..77248bf Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Diagnostics.FileVersionInfo.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Diagnostics.StackTrace.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Diagnostics.StackTrace.dll new file mode 100644 index 0000000..5ec85f3 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Diagnostics.StackTrace.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Compression.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Compression.dll new file mode 100644 index 0000000..f8468a6 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Compression.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.FileSystem.Primitives.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.FileSystem.Primitives.dll new file mode 100644 index 0000000..ad9c238 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.FileSystem.Primitives.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.FileSystem.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.FileSystem.dll new file mode 100644 index 0000000..7c43977 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.FileSystem.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Pipes.AccessControl.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Pipes.AccessControl.dll new file mode 100644 index 0000000..59cff80 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Pipes.AccessControl.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Pipes.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Pipes.dll new file mode 100644 index 0000000..f0b233a Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.IO.Pipes.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Reflection.Metadata.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Reflection.Metadata.dll new file mode 100644 index 0000000..ee68731 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Reflection.Metadata.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.AccessControl.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.AccessControl.dll new file mode 100644 index 0000000..ea65f02 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.AccessControl.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Claims.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Claims.dll new file mode 100644 index 0000000..4e28e4c Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Claims.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Algorithms.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Algorithms.dll new file mode 100644 index 0000000..fa8ad65 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Algorithms.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Encoding.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Encoding.dll new file mode 100644 index 0000000..de1ec5e Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Encoding.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Primitives.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Primitives.dll new file mode 100644 index 0000000..16b2446 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.Primitives.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.X509Certificates.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.X509Certificates.dll new file mode 100644 index 0000000..e6af960 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Cryptography.X509Certificates.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Principal.Windows.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Principal.Windows.dll new file mode 100644 index 0000000..06601a1 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Security.Principal.Windows.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Text.Encoding.CodePages.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Text.Encoding.CodePages.dll new file mode 100644 index 0000000..0f2f447 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Text.Encoding.CodePages.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.ValueTuple.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.ValueTuple.dll new file mode 100644 index 0000000..78a1851 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.ValueTuple.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.ReaderWriter.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.ReaderWriter.dll new file mode 100644 index 0000000..3d5103b Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.ReaderWriter.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XPath.XDocument.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XPath.XDocument.dll new file mode 100644 index 0000000..ada40e0 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XPath.XDocument.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XPath.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XPath.dll new file mode 100644 index 0000000..86a25a3 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XPath.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XmlDocument.dll b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XmlDocument.dll new file mode 100644 index 0000000..cf138d3 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/System.Xml.XmlDocument.dll differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/VBCSCompiler.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/VBCSCompiler.exe new file mode 100644 index 0000000..65c3f58 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/VBCSCompiler.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/VBCSCompiler.exe.config b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/VBCSCompiler.exe.config new file mode 100644 index 0000000..8acf2f1 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/VBCSCompiler.exe.config @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.exe new file mode 100644 index 0000000..f5b0be9 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.exe.config b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.exe.config new file mode 100644 index 0000000..5d92a80 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.exe.config @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.rsp b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.rsp new file mode 100644 index 0000000..ce72ac6 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csc.rsp @@ -0,0 +1,46 @@ +# Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +# This file contains command-line options that the C# +# command line compiler (CSC) will process as part +# of every compilation, unless the "/noconfig" option +# is specified. + +# Reference the common Framework libraries +/r:Accessibility.dll +/r:Microsoft.CSharp.dll +/r:System.Configuration.dll +/r:System.Configuration.Install.dll +/r:System.Core.dll +/r:System.Data.dll +/r:System.Data.DataSetExtensions.dll +/r:System.Data.Linq.dll +/r:System.Data.OracleClient.dll +/r:System.Deployment.dll +/r:System.Design.dll +/r:System.DirectoryServices.dll +/r:System.dll +/r:System.Drawing.Design.dll +/r:System.Drawing.dll +/r:System.EnterpriseServices.dll +/r:System.Management.dll +/r:System.Messaging.dll +/r:System.Runtime.Remoting.dll +/r:System.Runtime.Serialization.dll +/r:System.Runtime.Serialization.Formatters.Soap.dll +/r:System.Security.dll +/r:System.ServiceModel.dll +/r:System.ServiceModel.Web.dll +/r:System.ServiceProcess.dll +/r:System.Transactions.dll +/r:System.Web.dll +/r:System.Web.Extensions.Design.dll +/r:System.Web.Extensions.dll +/r:System.Web.Mobile.dll +/r:System.Web.RegularExpressions.dll +/r:System.Web.Services.dll +/r:System.Windows.Forms.dll +/r:System.Workflow.Activities.dll +/r:System.Workflow.ComponentModel.dll +/r:System.Workflow.Runtime.dll +/r:System.Xml.dll +/r:System.Xml.Linq.dll diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.exe new file mode 100644 index 0000000..76d5a82 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.exe.config b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.exe.config new file mode 100644 index 0000000..1b6184b --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.exe.config @@ -0,0 +1,159 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.rsp b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.rsp new file mode 100644 index 0000000..2ec6fc9 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/csi.rsp @@ -0,0 +1,14 @@ +/r:System +/r:System.Core +/r:Microsoft.CSharp +/r:System.ValueTuple.dll +/u:System +/u:System.IO +/u:System.Collections.Generic +/u:System.Console +/u:System.Diagnostics +/u:System.Dynamic +/u:System.Linq +/u:System.Linq.Expressions +/u:System.Text +/u:System.Threading.Tasks \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.exe b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.exe new file mode 100644 index 0000000..a14b038 Binary files /dev/null and b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.exe differ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.exe.config b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.exe.config new file mode 100644 index 0000000..5d92a80 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.exe.config @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.rsp b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.rsp new file mode 100644 index 0000000..8350880 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/RoslynLatest/vbc.rsp @@ -0,0 +1,55 @@ +# Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +# This file contains command-line options that the VB +# command line compiler (VBC) will process as part +# of every compilation, unless the "/noconfig" option +# is specified. + +# Reference the common Framework libraries +/r:Accessibility.dll +/r:System.Configuration.dll +/r:System.Configuration.Install.dll +/r:System.Data.dll +/r:System.Data.OracleClient.dll +/r:System.Deployment.dll +/r:System.Design.dll +/r:System.DirectoryServices.dll +/r:System.dll +/r:System.Drawing.Design.dll +/r:System.Drawing.dll +/r:System.EnterpriseServices.dll +/r:System.Management.dll +/r:System.Messaging.dll +/r:System.Runtime.Remoting.dll +/r:System.Runtime.Serialization.Formatters.Soap.dll +/r:System.Security.dll +/r:System.ServiceProcess.dll +/r:System.Transactions.dll +/r:System.Web.dll +/r:System.Web.Mobile.dll +/r:System.Web.RegularExpressions.dll +/r:System.Web.Services.dll +/r:System.Windows.Forms.dll +/r:System.XML.dll + +/r:System.Workflow.Activities.dll +/r:System.Workflow.ComponentModel.dll +/r:System.Workflow.Runtime.dll +/r:System.Runtime.Serialization.dll +/r:System.ServiceModel.dll + +/r:System.Core.dll +/r:System.Xml.Linq.dll +/r:System.Data.Linq.dll +/r:System.Data.DataSetExtensions.dll +/r:System.Web.Extensions.dll +/r:System.Web.Extensions.Design.dll +/r:System.ServiceModel.Web.dll + +# Import System and Microsoft.VisualBasic +/imports:System +/imports:Microsoft.VisualBasic +/imports:System.Linq +/imports:System.Xml.Linq + +/optioninfer+ diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/net45/install.ps1 b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/net45/install.ps1 new file mode 100644 index 0000000..72d2bc4 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/net45/install.ps1 @@ -0,0 +1,269 @@ +# Copyright (c) .NET Foundation. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. + +param($installPath, $toolsPath, $package, $project) + +$roslynSubFolder = 'roslyn' + +if ($project -eq $null) { + $project = Get-Project +} + +$libDirectory = Join-Path $installPath 'lib\net45' +$projectRoot = $project.Properties.Item('FullPath').Value +$projectTargetFramework = $project.Properties.Item('TargetFrameworkMoniker').Value +$shouldUseRoslyn45 = $projectTargetFramework -match '4.5' +$binDirectory = Join-Path $projectRoot 'bin' + +# We need to copy the provider assembly into the bin\ folder, otherwise +# Microsoft.VisualStudio.Web.Host.exe cannot find the assembly. +# However, users will see the error after they clean solutions. +New-Item $binDirectory -type directory -force | Out-Null +Copy-Item $libDirectory\* $binDirectory -force | Out-Null + +# For Web Site, we need to copy the Roslyn toolset into +# the applicaiton's bin folder. +# For Web Applicaiton project, this is done in csproj. +if ($project.Type -eq 'Web Site') { + $packageDirectory = Split-Path $installPath + + if($package.Versions -eq $null) + { + $compilerVersion = $package.Version + } + else + { + $compilerVersion = @($package.Versions)[0] + } + + $compilerPackageFolderName = $package.Id + "." + $compilerVersion + $compilerPackageDirectory = Join-Path $packageDirectory $compilerPackageFolderName + if ((Get-Item $compilerPackageDirectory) -isnot [System.IO.DirectoryInfo]) + { + Write-Host "The install.ps1 cannot find the installation location of package $compilerPackageName, or the pakcage is not installed correctly." + Write-Host 'The install.ps1 did not complete.' + break + } + + if($shouldUseRoslyn45) + { + $compilerPackageToolsDirectory = Join-Path $compilerPackageDirectory 'tools\roslyn45' + } + else + { + $compilerPackageToolsDirectory = Join-Path $compilerPackageDirectory 'tools\roslynlatest' + } + $roslynSubDirectory = Join-Path $binDirectory $roslynSubFolder + New-Item $roslynSubDirectory -type directory -force | Out-Null + Copy-Item $compilerPackageToolsDirectory\* $roslynSubDirectory -force | Out-Null + + # Generate a .refresh file for each dll/exe file. + Push-Location + Set-Location $projectRoot + $relativeAssemblySource = Resolve-Path -relative $compilerPackageToolsDirectory + Pop-Location + + Get-ChildItem -Path $roslynSubDirectory | ` + Foreach-Object { + if (($_.Extension -eq ".dll") -or ($_.Extension -eq ".exe")) { + $refreshFile = $_.FullName + $refreshFile += ".refresh" + $refreshContent = Join-Path $relativeAssemblySource $_.Name + Set-Content $refreshFile $refreshContent + } + } +} +# SIG # Begin signature block +# MIIj7AYJKoZIhvcNAQcCoIIj3TCCI9kCAQExDzANBglghkgBZQMEAgEFADB5Bgor +# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG +# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDtvxPzgXqotl1m +# H/XfQZLEW25b0XwuOnAj3if78cNKFaCCDYMwggYBMIID6aADAgECAhMzAAAAxOmJ +# +HqBUOn/AAAAAADEMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMRMwEQYD +# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy +# b3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNpZ25p +# bmcgUENBIDIwMTEwHhcNMTcwODExMjAyMDI0WhcNMTgwODExMjAyMDI0WjB0MQsw +# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u +# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMR4wHAYDVQQDExVNaWNy +# b3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB +# AQCIirgkwwePmoB5FfwmYPxyiCz69KOXiJZGt6PLX4kvOjMuHpF4+nypH4IBtXrL +# GrwDykbrxZn3+wQd8oUK/yJuofJnPcUnGOUoH/UElEFj7OO6FYztE5o13jhwVG87 +# 7K1FCTBJwb6PMJkMy3bJ93OVFnfRi7uUxwiFIO0eqDXxccLgdABLitLckevWeP6N +# +q1giD29uR+uYpe/xYSxkK7WryvTVPs12s1xkuYe/+xxa8t/CHZ04BBRSNTxAMhI +# TKMHNeVZDf18nMjmWuOF9daaDx+OpuSEF8HWyp8dAcf9SKcTkjOXIUgy+MIkogCy +# vlPKg24pW4HvOG6A87vsEwvrAgMBAAGjggGAMIIBfDAfBgNVHSUEGDAWBgorBgEE +# AYI3TAgBBggrBgEFBQcDAzAdBgNVHQ4EFgQUy9ZihM9gOer/Z8Jc0si7q7fDE5gw +# UgYDVR0RBEswSaRHMEUxDTALBgNVBAsTBE1PUFIxNDAyBgNVBAUTKzIzMDAxMitj +# ODA0YjVlYS00OWI0LTQyMzgtODM2Mi1kODUxZmEyMjU0ZmMwHwYDVR0jBBgwFoAU +# SG5k5VAF04KqFzc3IrVtqMp1ApUwVAYDVR0fBE0wSzBJoEegRYZDaHR0cDovL3d3 +# dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljQ29kU2lnUENBMjAxMV8yMDEx +# LTA3LTA4LmNybDBhBggrBgEFBQcBAQRVMFMwUQYIKwYBBQUHMAKGRWh0dHA6Ly93 +# d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY2VydHMvTWljQ29kU2lnUENBMjAxMV8y +# MDExLTA3LTA4LmNydDAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4ICAQAG +# Fh/bV8JQyCNPolF41+34/c291cDx+RtW7VPIaUcF1cTL7OL8mVuVXxE4KMAFRRPg +# mnmIvGar27vrAlUjtz0jeEFtrvjxAFqUmYoczAmV0JocRDCppRbHukdb9Ss0i5+P +# WDfDThyvIsoQzdiCEKk18K4iyI8kpoGL3ycc5GYdiT4u/1cDTcFug6Ay67SzL1BW +# XQaxFYzIHWO3cwzj1nomDyqWRacygz6WPldJdyOJ/rEQx4rlCBVRxStaMVs5apao +# pIhrlihv8cSu6r1FF8xiToG1VBpHjpilbcBuJ8b4Jx/I7SCpC7HxzgualOJqnWmD +# oTbXbSD+hdX/w7iXNgn+PRTBmBSpwIbM74LBq1UkQxi1SIV4htD50p0/GdkUieeN +# n2gkiGg7qceATibnCCFMY/2ckxVNM7VWYE/XSrk4jv8u3bFfpENryXjPsbtrj4Ns +# h3Kq6qX7n90a1jn8ZMltPgjlfIOxrbyjunvPllakeljLEkdi0iHv/DzEMQv3Lz5k +# pTdvYFA/t0SQT6ALi75+WPbHZ4dh256YxMiMy29H4cAulO2x9rAwbexqSajplnbI +# vQjE/jv1rnM3BrJWzxnUu/WUyocc8oBqAU+2G4Fzs9NbIj86WBjfiO5nxEmnL9wl +# iz1e0Ow0RJEdvJEMdoI+78TYLaEEAo5I+e/dAs8DojCCB3owggVioAMCAQICCmEO +# kNIAAAAAAAMwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQI +# EwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3Nv +# ZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBSb290IENlcnRpZmlj +# YXRlIEF1dGhvcml0eSAyMDExMB4XDTExMDcwODIwNTkwOVoXDTI2MDcwODIxMDkw +# OVowfjELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcT +# B1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEoMCYGA1UE +# AxMfTWljcm9zb2Z0IENvZGUgU2lnbmluZyBQQ0EgMjAxMTCCAiIwDQYJKoZIhvcN +# AQEBBQADggIPADCCAgoCggIBAKvw+nIQHC6t2G6qghBNNLrytlghn0IbKmvpWlCq +# uAY4GgRJun/DDB7dN2vGEtgL8DjCmQawyDnVARQxQtOJDXlkh36UYCRsr55JnOlo +# XtLfm1OyCizDr9mpK656Ca/XllnKYBoF6WZ26DJSJhIv56sIUM+zRLdd2MQuA3Wr +# aPPLbfM6XKEW9Ea64DhkrG5kNXimoGMPLdNAk/jj3gcN1Vx5pUkp5w2+oBN3vpQ9 +# 7/vjK1oQH01WKKJ6cuASOrdJXtjt7UORg9l7snuGG9k+sYxd6IlPhBryoS9Z5JA7 +# La4zWMW3Pv4y07MDPbGyr5I4ftKdgCz1TlaRITUlwzluZH9TupwPrRkjhMv0ugOG +# jfdf8NBSv4yUh7zAIXQlXxgotswnKDglmDlKNs98sZKuHCOnqWbsYR9q4ShJnV+I +# 4iVd0yFLPlLEtVc/JAPw0XpbL9Uj43BdD1FGd7P4AOG8rAKCX9vAFbO9G9RVS+c5 +# oQ/pI0m8GLhEfEXkwcNyeuBy5yTfv0aZxe/CHFfbg43sTUkwp6uO3+xbn6/83bBm +# 4sGXgXvt1u1L50kppxMopqd9Z4DmimJ4X7IvhNdXnFy/dygo8e1twyiPLI9AN0/B +# 4YVEicQJTMXUpUMvdJX3bvh4IFgsE11glZo+TzOE2rCIF96eTvSWsLxGoGyY0uDW +# iIwLAgMBAAGjggHtMIIB6TAQBgkrBgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQUSG5k +# 5VAF04KqFzc3IrVtqMp1ApUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYD +# VR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUci06AjGQQ7kU +# BU7h6qfHMdEjiTQwWgYDVR0fBFMwUTBPoE2gS4ZJaHR0cDovL2NybC5taWNyb3Nv +# ZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljUm9vQ2VyQXV0MjAxMV8yMDExXzAz +# XzIyLmNybDBeBggrBgEFBQcBAQRSMFAwTgYIKwYBBQUHMAKGQmh0dHA6Ly93d3cu +# bWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljUm9vQ2VyQXV0MjAxMV8yMDExXzAz +# XzIyLmNydDCBnwYDVR0gBIGXMIGUMIGRBgkrBgEEAYI3LgMwgYMwPwYIKwYBBQUH +# AgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvZG9jcy9wcmltYXJ5 +# Y3BzLmh0bTBABggrBgEFBQcCAjA0HjIgHQBMAGUAZwBhAGwAXwBwAG8AbABpAGMA +# eQBfAHMAdABhAHQAZQBtAGUAbgB0AC4gHTANBgkqhkiG9w0BAQsFAAOCAgEAZ/KG +# pZjgVHkaLtPYdGcimwuWEeFjkplCln3SeQyQwWVfLiw++MNy0W2D/r4/6ArKO79H +# qaPzadtjvyI1pZddZYSQfYtGUFXYDJJ80hpLHPM8QotS0LD9a+M+By4pm+Y9G6XU +# tR13lDni6WTJRD14eiPzE32mkHSDjfTLJgJGKsKKELukqQUMm+1o+mgulaAqPypr +# WEljHwlpblqYluSD9MCP80Yr3vw70L01724lruWvJ+3Q3fMOr5kol5hNDj0L8giJ +# 1h/DMhji8MUtzluetEk5CsYKwsatruWy2dsViFFFWDgycScaf7H0J/jeLDogaZiy +# WYlobm+nt3TDQAUGpgEqKD6CPxNNZgvAs0314Y9/HG8VfUWnduVAKmWjw11SYobD +# HWM2l4bf2vP48hahmifhzaWX0O5dY0HjWwechz4GdwbRBrF1HxS+YWG18NzGGwS+ +# 30HHDiju3mUv7Jf2oVyW2ADWoUa9WfOXpQlLSBCZgB/QACnFsZulP0V3HjXG0qKi +# n3p6IvpIlR+r+0cjgPWe+L9rt0uX4ut1eBrs6jeZeRhL/9azI2h15q/6/IvrC4Dq +# aTuv/DDtBEyO3991bWORPdGdVk5Pv4BXIqF4ETIheu9BCrE/+6jMpF3BoYibV3FW +# TkhFwELJm3ZbCoBIa/15n8G9bW1qyVJzEw16UM0xghW/MIIVuwIBATCBlTB+MQsw +# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u +# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSgwJgYDVQQDEx9NaWNy +# b3NvZnQgQ29kZSBTaWduaW5nIFBDQSAyMDExAhMzAAAAxOmJ+HqBUOn/AAAAAADE +# MA0GCWCGSAFlAwQCAQUAoIGuMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwG +# CisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCCLts7o +# DrMJAmymqpY78kaqOcJiIpEj3noaMZTBMyNq1DBCBgorBgEEAYI3AgEMMTQwMqAU +# gBIATQBpAGMAcgBvAHMAbwBmAHShGoAYaHR0cDovL3d3dy5taWNyb3NvZnQuY29t +# MA0GCSqGSIb3DQEBAQUABIIBAIaDhrEvA4ju4peetK/UDIWKx5Pnx1pMQRk3PN84 +# /3qbk/9W1Wm9uD/3a4IBWtzKiEsYoKYuNkqaYE549BGESH2Vy4sSRHeT+9qDm5q/ +# Gzgcj2cG5cQskRjzgQdBBE6/+nBGOxzEYWIPLop9wXE/YrlNqqPzx2yPIiJDJGOb +# 89r4i+IyXKzKg4AWjRq3rUo2cX+GaeVTtr1LXxjQKcrJ9r/HymAfPcMVpd4CLWLP +# OfUdeToDh0hSGP2d1ZoEbL9EZl6wOlzBVV2tD9msozEAxxQlYh+C2dacjNk1HvHj +# tWE9SDXjRGdktuvecYwuH2g4ToMiVEVRpdEW8euPvMozka6hghNJMIITRQYKKwYB +# BAGCNwMDATGCEzUwghMxBgkqhkiG9w0BBwKgghMiMIITHgIBAzEPMA0GCWCGSAFl +# AwQCAQUAMIIBPAYLKoZIhvcNAQkQAQSgggErBIIBJzCCASMCAQEGCisGAQQBhFkK +# AwEwMTANBglghkgBZQMEAgEFAAQgIuyt5OaNrqtShMw0VlxKMVeBsrwY0vVZ6j3h +# 1sFGWzUCBlsDND791xgTMjAxODA1MjQyMDM4MTAuNTE2WjAHAgEBgAIB9KCBuKSB +# tTCBsjELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcT +# B1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEMMAoGA1UE +# CxMDQU9DMScwJQYDVQQLEx5uQ2lwaGVyIERTRSBFU046N0FCNS0yREYyLURBM0Yx +# JTAjBgNVBAMTHE1pY3Jvc29mdCBUaW1lLVN0YW1wIFNlcnZpY2Wggg7NMIIGcTCC +# BFmgAwIBAgIKYQmBKgAAAAAAAjANBgkqhkiG9w0BAQsFADCBiDELMAkGA1UEBhMC +# VVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNV +# BAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFJv +# b3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTAwHhcNMTAwNzAxMjEzNjU1WhcN +# MjUwNzAxMjE0NjU1WjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3Rv +# bjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0 +# aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDCCASIw +# DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKkdDbx3EYo6IOz8E5f1+n9plGt0 +# VBDVpQoAgoX77XxoSyxfxcPlYcJ2tz5mK1vwFVMnBDEfQRsalR3OCROOfGEwWbEw +# RA/xYIiEVEMM1024OAizQt2TrNZzMFcmgqNFDdDq9UeBzb8kYDJYYEbyWEeGMoQe +# dGFnkV+BVLHPk0ySwcSmXdFhE24oxhr5hoC732H8RsEnHSRnEnIaIYqvS2SJUGKx +# Xf13Hz3wV3WsvYpCTUBR0Q+cBj5nf/VmwAOWRH7v0Ev9buWayrGo8noqCjHw2k4G +# kbaICDXoeByw6ZnNPOcvRLqn9NxkvaQBwSAJk3jN/LzAyURdXhacAQVPIk0CAwEA +# AaOCAeYwggHiMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBTVYzpcijGQ80N7 +# fEYbxTNoWoVtVTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMC +# AYYwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBTV9lbLj+iiXGJo0T2UkFvX +# zpoYxDBWBgNVHR8ETzBNMEugSaBHhkVodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20v +# cGtpL2NybC9wcm9kdWN0cy9NaWNSb29DZXJBdXRfMjAxMC0wNi0yMy5jcmwwWgYI +# KwYBBQUHAQEETjBMMEoGCCsGAQUFBzAChj5odHRwOi8vd3d3Lm1pY3Jvc29mdC5j +# b20vcGtpL2NlcnRzL01pY1Jvb0NlckF1dF8yMDEwLTA2LTIzLmNydDCBoAYDVR0g +# AQH/BIGVMIGSMIGPBgkrBgEEAYI3LgMwgYEwPQYIKwYBBQUHAgEWMWh0dHA6Ly93 +# d3cubWljcm9zb2Z0LmNvbS9QS0kvZG9jcy9DUFMvZGVmYXVsdC5odG0wQAYIKwYB +# BQUHAgIwNB4yIB0ATABlAGcAYQBsAF8AUABvAGwAaQBjAHkAXwBTAHQAYQB0AGUA +# bQBlAG4AdAAuIB0wDQYJKoZIhvcNAQELBQADggIBAAfmiFEN4sbgmD+BcQM9naOh +# IW+z66bM9TG+zwXiqf76V20ZMLPCxWbJat/15/B4vceoniXj+bzta1RXCCtRgkQS +# +7lTjMz0YBKKdsxAQEGb3FwX/1z5Xhc1mCRWS3TvQhDIr79/xn/yN31aPxzymXlK +# kVIArzgPF/UveYFl2am1a+THzvbKegBvSzBEJCI8z+0DpZaPWSm8tv0E4XCfMkon +# /VWvL/625Y4zu2JfmttXQOnxzplmkIz/amJ/3cVKC5Em4jnsGUpxY517IW3DnKOi +# PPp/fZZqkHimbdLhnPkd/DjYlPTGpQqWhqS9nhquBEKDuLWAmyI4ILUl5WTs9/S/ +# fmNZJQ96LjlXdqJxqgaKD4kWumGnEcua2A5HmoDF0M2n0O99g/DhO3EJ3110mCII +# YdqwUB5vvfHhAN/nMQekkzr3ZUd46PioSKv33nJ+YWtvd6mBy6cJrDm77MbL2IK0 +# cs0d9LiFAR6A+xuJKlQ5slvayA1VmXqHczsI5pgt6o3gMy4SKfXAL1QnIffIrE7a +# KLixqduWsqdCosnPGUFN4Ib5KpqjEWYw07t0MkvfY3v1mYovG8chr1m1rtxEPJdQ +# cdeh0sVV42neV8HR3jDA/czmTfsNv11P6Z0eGTgvvM9YBS7vDaBQNdrvCScc1bN+ +# NR4Iuto229Nfj950iEkSMIIE2TCCA8GgAwIBAgITMwAAAKteQJ3uRt8sbAAAAAAA +# qzANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGlu +# Z3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBv +# cmF0aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDAe +# Fw0xNjA5MDcxNzU2NTRaFw0xODA5MDcxNzU2NTRaMIGyMQswCQYDVQQGEwJVUzET +# MBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMV +# TWljcm9zb2Z0IENvcnBvcmF0aW9uMQwwCgYDVQQLEwNBT0MxJzAlBgNVBAsTHm5D +# aXBoZXIgRFNFIEVTTjo3QUI1LTJERjItREEzRjElMCMGA1UEAxMcTWljcm9zb2Z0 +# IFRpbWUtU3RhbXAgU2VydmljZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +# ggEBALPmflCYoEYJsGYBJoo00ynJfZg1mgws3TPKA88OAtcL77vhyC5JpNPQ2dxz +# 07tFhZxd5QH1/CumYpvhgAKn8zcoRUs13ri6bvuGkO3hqxDyOPB3wlvPQBPuOUob +# 0ip6HvyLAfipvJqPeQPD43DRrADzpsDLId101NSHhCiBrRpZUmLe7P3MxQOJTE0H +# s6DUHp57AcI6zWNpCZCIE5PDLZShLAQpuDfVSrUxiuS+bpEz23zuzDJ8XMEt4biw +# 1iKJISokeeLko88uGdZVyUgRJKSoyfVIyFLCMZKQ+mY2APmhMBpoD61pZEta8etp +# n3OGerZgH5SRXo4gvdTfDiqQyEsCAwEAAaOCARswggEXMB0GA1UdDgQWBBQNx0fQ +# HGDL6cBrlMxfBg5iuNhqpzAfBgNVHSMEGDAWgBTVYzpcijGQ80N7fEYbxTNoWoVt +# VTBWBgNVHR8ETzBNMEugSaBHhkVodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtp +# L2NybC9wcm9kdWN0cy9NaWNUaW1TdGFQQ0FfMjAxMC0wNy0wMS5jcmwwWgYIKwYB +# BQUHAQEETjBMMEoGCCsGAQUFBzAChj5odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20v +# cGtpL2NlcnRzL01pY1RpbVN0YVBDQV8yMDEwLTA3LTAxLmNydDAMBgNVHRMBAf8E +# AjAAMBMGA1UdJQQMMAoGCCsGAQUFBwMIMA0GCSqGSIb3DQEBCwUAA4IBAQA/n/66 +# LmHxciqtqhVmlaAES32zwkbd0OtbQDz0jHUFraGBbyR7DS7So4m68DYr+cjFdw56 +# uHzeVOL9DyZfPAx2LfoY0aIQqIheSypZlchfd3/+RCS4ApmEkZSvAsemKoaEsYv4 +# kSTH0G6jNr/7+LgHmm8+ae228ZthZ1StNujb8trlYqY7yG3MQ5omIvNEjOstRyZ1 +# 08Lmm9aKnRVPk+iAIM4OLZUDU/NA4BrcaVxMIddKEygvRdWC/aTB3yE7yes/OKU/ +# MvrNBku4H7ybGrORsZNd4v95oRbRuDX24ZHK93Hs/f6Kw+BlNVjLpF4PluanIq9o +# 8z7P3qSNqtjuEqTioYIDdzCCAl8CAQEwgeKhgbikgbUwgbIxCzAJBgNVBAYTAlVT +# MRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQK +# ExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xDDAKBgNVBAsTA0FPQzEnMCUGA1UECxMe +# bkNpcGhlciBEU0UgRVNOOjdBQjUtMkRGMi1EQTNGMSUwIwYDVQQDExxNaWNyb3Nv +# ZnQgVGltZS1TdGFtcCBTZXJ2aWNloiUKAQEwCQYFKw4DAhoFAAMVAMnsu0gtNdmU +# vraO9yapMW6Kh44yoIHBMIG+pIG7MIG4MQswCQYDVQQGEwJVUzETMBEGA1UECBMK +# V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0 +# IENvcnBvcmF0aW9uMQwwCgYDVQQLEwNBT0MxJzAlBgNVBAsTHm5DaXBoZXIgTlRT +# IEVTTjoyNjY1LTRDM0YtQzVERTErMCkGA1UEAxMiTWljcm9zb2Z0IFRpbWUgU291 +# cmNlIE1hc3RlciBDbG9jazANBgkqhkiG9w0BAQUFAAIFAN6xBL0wIhgPMjAxODA1 +# MjQwOTMwMzdaGA8yMDE4MDUyNTA5MzAzN1owdzA9BgorBgEEAYRZCgQBMS8wLTAK +# AgUA3rEEvQIBADAKAgEAAgIAkgIB/zAHAgEAAgIZVTAKAgUA3rJWPQIBADA2Bgor +# BgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZCgMBoAowCAIBAAIDFuNgoQowCAIBAAID +# B6EgMA0GCSqGSIb3DQEBBQUAA4IBAQA4YkR3yedIRTN1SxfyBIFAnQVrvuLpfopt +# kN3A6daJgHflSUCUBoWGt7JQI345vBsx4d1ahDA58svNqzv7wmiEhPV+JyEu8OBG +# Cr4wx1uccnYdbwuBU3XpBcEgqT34niErgZOVoehs7NnvP5xomUa2XKSN1r8MqUAI +# Eb5WAj6yq8afZW3W8Y6L1GUEv8CiNWAHMP27PxzVak5wmfnHV6Hbo0kZZJtcRu9t +# dGQkmJLb8TvH4yNrxZlyO33J7fmRfO3fJjyS7EQJj4Lg68WnavKx32yAAhg7ngLX +# wEUedm9jWv99UoQnCbPH8A/wzT2Znk6Ir/naCzjzQ5qrBFzquPsXMYIC9TCCAvEC +# AQEwgZMwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNV +# BAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQG +# A1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTACEzMAAACrXkCd7kbf +# LGwAAAAAAKswDQYJYIZIAWUDBAIBBQCgggEyMBoGCSqGSIb3DQEJAzENBgsqhkiG +# 9w0BCRABBDAvBgkqhkiG9w0BCQQxIgQgcQ37CLXdaaVsxit6ib0gLTPObYekzGvJ +# mG1PMM9AK+UwgeIGCyqGSIb3DQEJEAIMMYHSMIHPMIHMMIGxBBTJ7LtILTXZlL62 +# jvcmqTFuioeOMjCBmDCBgKR+MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNo +# aW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29y +# cG9yYXRpb24xJjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEw +# AhMzAAAAq15Ane5G3yxsAAAAAACrMBYEFD5Y3TFGmkMX+eEwoPQH+uKj+0unMA0G +# CSqGSIb3DQEBCwUABIIBAGRNstrl50AXcBXHM8BGKJqu0vASPYoaMm2yvEdX4LmT +# o0U1uZa5Mx0OmGftJZli9re7DJ+hwQy7Xpc5+yAKXMkEOV7W89Ox5G2XY4lvUyMQ +# 5+dZ+hfvrjt+IUjvQj4SwmwQmArD1VXYYnSSeavGJi1wKVBuwozxNTj3eYCoTiC3 +# +21dQDXcDJ1oBJgfuutB/2OMQTgVfn3vMDyhgrh+ZN26Rsr4Ha077sLMeIPV0SY+ +# Uq5UxFV14BJ/Lg6a1viauQk8u4TZz6+MK91V5W7vbd/tTCARt9adqZbRY36jR7bg +# zRuVSXd4/f0o1YQQZ9a3T988ESe0Z/F43/27lGPcgeA= +# SIG # End signature block diff --git a/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/net45/uninstall.ps1 b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/net45/uninstall.ps1 new file mode 100644 index 0000000..bdcd2b9 --- /dev/null +++ b/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0/tools/net45/uninstall.ps1 @@ -0,0 +1,213 @@ +# Copyright (c) .NET Foundation. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. + +param($installPath, $toolsPath, $package, $project) + +$roslynSubFolder = 'roslyn' + +if ($project -eq $null) { + $project = Get-Project +} + +$projectRoot = $project.Properties.Item('FullPath').Value +$binDirectory = Join-Path $projectRoot 'bin' +$targetDirectory = Join-Path $binDirectory $roslynSubFolder + +if (Test-Path $targetDirectory) { + Get-Process -Name "VBCSCompiler" -ErrorAction SilentlyContinue | Stop-Process -Force -PassThru -ErrorAction SilentlyContinue | Wait-Process + Remove-Item $targetDirectory -Force -Recurse -ErrorAction SilentlyContinue +} +# SIG # Begin signature block +# MIIj7AYJKoZIhvcNAQcCoIIj3TCCI9kCAQExDzANBglghkgBZQMEAgEFADB5Bgor +# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG +# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAK1efVMdwW2H82 +# s13qfT9caKqk32vVPIRMl3O0MyWjXaCCDYMwggYBMIID6aADAgECAhMzAAAAxOmJ +# +HqBUOn/AAAAAADEMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMRMwEQYD +# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy +# b3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNpZ25p +# bmcgUENBIDIwMTEwHhcNMTcwODExMjAyMDI0WhcNMTgwODExMjAyMDI0WjB0MQsw +# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u +# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMR4wHAYDVQQDExVNaWNy +# b3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB +# AQCIirgkwwePmoB5FfwmYPxyiCz69KOXiJZGt6PLX4kvOjMuHpF4+nypH4IBtXrL +# GrwDykbrxZn3+wQd8oUK/yJuofJnPcUnGOUoH/UElEFj7OO6FYztE5o13jhwVG87 +# 7K1FCTBJwb6PMJkMy3bJ93OVFnfRi7uUxwiFIO0eqDXxccLgdABLitLckevWeP6N +# +q1giD29uR+uYpe/xYSxkK7WryvTVPs12s1xkuYe/+xxa8t/CHZ04BBRSNTxAMhI +# TKMHNeVZDf18nMjmWuOF9daaDx+OpuSEF8HWyp8dAcf9SKcTkjOXIUgy+MIkogCy +# vlPKg24pW4HvOG6A87vsEwvrAgMBAAGjggGAMIIBfDAfBgNVHSUEGDAWBgorBgEE +# AYI3TAgBBggrBgEFBQcDAzAdBgNVHQ4EFgQUy9ZihM9gOer/Z8Jc0si7q7fDE5gw +# UgYDVR0RBEswSaRHMEUxDTALBgNVBAsTBE1PUFIxNDAyBgNVBAUTKzIzMDAxMitj +# ODA0YjVlYS00OWI0LTQyMzgtODM2Mi1kODUxZmEyMjU0ZmMwHwYDVR0jBBgwFoAU +# SG5k5VAF04KqFzc3IrVtqMp1ApUwVAYDVR0fBE0wSzBJoEegRYZDaHR0cDovL3d3 +# dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljQ29kU2lnUENBMjAxMV8yMDEx +# LTA3LTA4LmNybDBhBggrBgEFBQcBAQRVMFMwUQYIKwYBBQUHMAKGRWh0dHA6Ly93 +# d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY2VydHMvTWljQ29kU2lnUENBMjAxMV8y +# MDExLTA3LTA4LmNydDAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4ICAQAG +# Fh/bV8JQyCNPolF41+34/c291cDx+RtW7VPIaUcF1cTL7OL8mVuVXxE4KMAFRRPg +# mnmIvGar27vrAlUjtz0jeEFtrvjxAFqUmYoczAmV0JocRDCppRbHukdb9Ss0i5+P +# WDfDThyvIsoQzdiCEKk18K4iyI8kpoGL3ycc5GYdiT4u/1cDTcFug6Ay67SzL1BW +# XQaxFYzIHWO3cwzj1nomDyqWRacygz6WPldJdyOJ/rEQx4rlCBVRxStaMVs5apao +# pIhrlihv8cSu6r1FF8xiToG1VBpHjpilbcBuJ8b4Jx/I7SCpC7HxzgualOJqnWmD +# oTbXbSD+hdX/w7iXNgn+PRTBmBSpwIbM74LBq1UkQxi1SIV4htD50p0/GdkUieeN +# n2gkiGg7qceATibnCCFMY/2ckxVNM7VWYE/XSrk4jv8u3bFfpENryXjPsbtrj4Ns +# h3Kq6qX7n90a1jn8ZMltPgjlfIOxrbyjunvPllakeljLEkdi0iHv/DzEMQv3Lz5k +# pTdvYFA/t0SQT6ALi75+WPbHZ4dh256YxMiMy29H4cAulO2x9rAwbexqSajplnbI +# vQjE/jv1rnM3BrJWzxnUu/WUyocc8oBqAU+2G4Fzs9NbIj86WBjfiO5nxEmnL9wl +# iz1e0Ow0RJEdvJEMdoI+78TYLaEEAo5I+e/dAs8DojCCB3owggVioAMCAQICCmEO +# kNIAAAAAAAMwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQI +# EwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3Nv +# ZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBSb290IENlcnRpZmlj +# YXRlIEF1dGhvcml0eSAyMDExMB4XDTExMDcwODIwNTkwOVoXDTI2MDcwODIxMDkw +# OVowfjELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcT +# B1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEoMCYGA1UE +# AxMfTWljcm9zb2Z0IENvZGUgU2lnbmluZyBQQ0EgMjAxMTCCAiIwDQYJKoZIhvcN +# AQEBBQADggIPADCCAgoCggIBAKvw+nIQHC6t2G6qghBNNLrytlghn0IbKmvpWlCq +# uAY4GgRJun/DDB7dN2vGEtgL8DjCmQawyDnVARQxQtOJDXlkh36UYCRsr55JnOlo +# XtLfm1OyCizDr9mpK656Ca/XllnKYBoF6WZ26DJSJhIv56sIUM+zRLdd2MQuA3Wr +# aPPLbfM6XKEW9Ea64DhkrG5kNXimoGMPLdNAk/jj3gcN1Vx5pUkp5w2+oBN3vpQ9 +# 7/vjK1oQH01WKKJ6cuASOrdJXtjt7UORg9l7snuGG9k+sYxd6IlPhBryoS9Z5JA7 +# La4zWMW3Pv4y07MDPbGyr5I4ftKdgCz1TlaRITUlwzluZH9TupwPrRkjhMv0ugOG +# jfdf8NBSv4yUh7zAIXQlXxgotswnKDglmDlKNs98sZKuHCOnqWbsYR9q4ShJnV+I +# 4iVd0yFLPlLEtVc/JAPw0XpbL9Uj43BdD1FGd7P4AOG8rAKCX9vAFbO9G9RVS+c5 +# oQ/pI0m8GLhEfEXkwcNyeuBy5yTfv0aZxe/CHFfbg43sTUkwp6uO3+xbn6/83bBm +# 4sGXgXvt1u1L50kppxMopqd9Z4DmimJ4X7IvhNdXnFy/dygo8e1twyiPLI9AN0/B +# 4YVEicQJTMXUpUMvdJX3bvh4IFgsE11glZo+TzOE2rCIF96eTvSWsLxGoGyY0uDW +# iIwLAgMBAAGjggHtMIIB6TAQBgkrBgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQUSG5k +# 5VAF04KqFzc3IrVtqMp1ApUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYD +# VR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUci06AjGQQ7kU +# BU7h6qfHMdEjiTQwWgYDVR0fBFMwUTBPoE2gS4ZJaHR0cDovL2NybC5taWNyb3Nv +# ZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljUm9vQ2VyQXV0MjAxMV8yMDExXzAz +# XzIyLmNybDBeBggrBgEFBQcBAQRSMFAwTgYIKwYBBQUHMAKGQmh0dHA6Ly93d3cu +# bWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljUm9vQ2VyQXV0MjAxMV8yMDExXzAz +# XzIyLmNydDCBnwYDVR0gBIGXMIGUMIGRBgkrBgEEAYI3LgMwgYMwPwYIKwYBBQUH +# AgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvZG9jcy9wcmltYXJ5 +# Y3BzLmh0bTBABggrBgEFBQcCAjA0HjIgHQBMAGUAZwBhAGwAXwBwAG8AbABpAGMA +# eQBfAHMAdABhAHQAZQBtAGUAbgB0AC4gHTANBgkqhkiG9w0BAQsFAAOCAgEAZ/KG +# pZjgVHkaLtPYdGcimwuWEeFjkplCln3SeQyQwWVfLiw++MNy0W2D/r4/6ArKO79H +# qaPzadtjvyI1pZddZYSQfYtGUFXYDJJ80hpLHPM8QotS0LD9a+M+By4pm+Y9G6XU +# tR13lDni6WTJRD14eiPzE32mkHSDjfTLJgJGKsKKELukqQUMm+1o+mgulaAqPypr +# WEljHwlpblqYluSD9MCP80Yr3vw70L01724lruWvJ+3Q3fMOr5kol5hNDj0L8giJ +# 1h/DMhji8MUtzluetEk5CsYKwsatruWy2dsViFFFWDgycScaf7H0J/jeLDogaZiy +# WYlobm+nt3TDQAUGpgEqKD6CPxNNZgvAs0314Y9/HG8VfUWnduVAKmWjw11SYobD +# HWM2l4bf2vP48hahmifhzaWX0O5dY0HjWwechz4GdwbRBrF1HxS+YWG18NzGGwS+ +# 30HHDiju3mUv7Jf2oVyW2ADWoUa9WfOXpQlLSBCZgB/QACnFsZulP0V3HjXG0qKi +# n3p6IvpIlR+r+0cjgPWe+L9rt0uX4ut1eBrs6jeZeRhL/9azI2h15q/6/IvrC4Dq +# aTuv/DDtBEyO3991bWORPdGdVk5Pv4BXIqF4ETIheu9BCrE/+6jMpF3BoYibV3FW +# TkhFwELJm3ZbCoBIa/15n8G9bW1qyVJzEw16UM0xghW/MIIVuwIBATCBlTB+MQsw +# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u +# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSgwJgYDVQQDEx9NaWNy +# b3NvZnQgQ29kZSBTaWduaW5nIFBDQSAyMDExAhMzAAAAxOmJ+HqBUOn/AAAAAADE +# MA0GCWCGSAFlAwQCAQUAoIGuMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwG +# CisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCDOBDVB +# OEzzTt1L2vvuy7m1U6pkigYedClT7DCZXaUB9DBCBgorBgEEAYI3AgEMMTQwMqAU +# gBIATQBpAGMAcgBvAHMAbwBmAHShGoAYaHR0cDovL3d3dy5taWNyb3NvZnQuY29t +# MA0GCSqGSIb3DQEBAQUABIIBAHcEibveiHew45Q8lT5Q9wF0PDsxMsiz+Bm5+4Xs +# k/af/5RFNgJjTlzjYYNFgZdkNkhv2lfm7oY6Ial6urC+wGkImu1VyikYTm35Plw7 +# gA/iNWaUom9eYd+hW17DFyO+mtvqxeWt3bD+rOHQ+RHNdNUoH7/bFg0x3b2qYSY/ +# L0qES0u/Tq6sauyZ8PRhoEcpc9h5O7OG2fJcXnHtNOQKULHEU7sGYGwt1PkLTwED +# QDqOGNXkTp4BEByDTYi7886Jii1jT6kavGRYbOp7vwkOSquVoXLMrz1qfXoSvVkr +# wY96pqV1EFZEhVmXmnBIpmIvoZNbB6L2bsj/aQMV0oF/FU2hghNJMIITRQYKKwYB +# BAGCNwMDATGCEzUwghMxBgkqhkiG9w0BBwKgghMiMIITHgIBAzEPMA0GCWCGSAFl +# AwQCAQUAMIIBPAYLKoZIhvcNAQkQAQSgggErBIIBJzCCASMCAQEGCisGAQQBhFkK +# AwEwMTANBglghkgBZQMEAgEFAAQgj9ylxbHudguVxqaZABk/MCl9IQuhdcwiufOP +# Thd9AucCBlsDOJeV0BgTMjAxODA1MjQyMDM4MTAuOTU5WjAHAgEBgAIB9KCBuKSB +# tTCBsjELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcT +# B1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEMMAoGA1UE +# CxMDQU9DMScwJQYDVQQLEx5uQ2lwaGVyIERTRSBFU046MTJFNy0zMDY0LTYxMTIx +# JTAjBgNVBAMTHE1pY3Jvc29mdCBUaW1lLVN0YW1wIFNlcnZpY2Wggg7NMIIGcTCC +# BFmgAwIBAgIKYQmBKgAAAAAAAjANBgkqhkiG9w0BAQsFADCBiDELMAkGA1UEBhMC +# VVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNV +# BAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFJv +# b3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTAwHhcNMTAwNzAxMjEzNjU1WhcN +# MjUwNzAxMjE0NjU1WjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3Rv +# bjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0 +# aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDCCASIw +# DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKkdDbx3EYo6IOz8E5f1+n9plGt0 +# VBDVpQoAgoX77XxoSyxfxcPlYcJ2tz5mK1vwFVMnBDEfQRsalR3OCROOfGEwWbEw +# RA/xYIiEVEMM1024OAizQt2TrNZzMFcmgqNFDdDq9UeBzb8kYDJYYEbyWEeGMoQe +# dGFnkV+BVLHPk0ySwcSmXdFhE24oxhr5hoC732H8RsEnHSRnEnIaIYqvS2SJUGKx +# Xf13Hz3wV3WsvYpCTUBR0Q+cBj5nf/VmwAOWRH7v0Ev9buWayrGo8noqCjHw2k4G +# kbaICDXoeByw6ZnNPOcvRLqn9NxkvaQBwSAJk3jN/LzAyURdXhacAQVPIk0CAwEA +# AaOCAeYwggHiMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBTVYzpcijGQ80N7 +# fEYbxTNoWoVtVTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMC +# AYYwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBTV9lbLj+iiXGJo0T2UkFvX +# zpoYxDBWBgNVHR8ETzBNMEugSaBHhkVodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20v +# cGtpL2NybC9wcm9kdWN0cy9NaWNSb29DZXJBdXRfMjAxMC0wNi0yMy5jcmwwWgYI +# KwYBBQUHAQEETjBMMEoGCCsGAQUFBzAChj5odHRwOi8vd3d3Lm1pY3Jvc29mdC5j +# b20vcGtpL2NlcnRzL01pY1Jvb0NlckF1dF8yMDEwLTA2LTIzLmNydDCBoAYDVR0g +# AQH/BIGVMIGSMIGPBgkrBgEEAYI3LgMwgYEwPQYIKwYBBQUHAgEWMWh0dHA6Ly93 +# d3cubWljcm9zb2Z0LmNvbS9QS0kvZG9jcy9DUFMvZGVmYXVsdC5odG0wQAYIKwYB +# BQUHAgIwNB4yIB0ATABlAGcAYQBsAF8AUABvAGwAaQBjAHkAXwBTAHQAYQB0AGUA +# bQBlAG4AdAAuIB0wDQYJKoZIhvcNAQELBQADggIBAAfmiFEN4sbgmD+BcQM9naOh +# IW+z66bM9TG+zwXiqf76V20ZMLPCxWbJat/15/B4vceoniXj+bzta1RXCCtRgkQS +# +7lTjMz0YBKKdsxAQEGb3FwX/1z5Xhc1mCRWS3TvQhDIr79/xn/yN31aPxzymXlK +# kVIArzgPF/UveYFl2am1a+THzvbKegBvSzBEJCI8z+0DpZaPWSm8tv0E4XCfMkon +# /VWvL/625Y4zu2JfmttXQOnxzplmkIz/amJ/3cVKC5Em4jnsGUpxY517IW3DnKOi +# PPp/fZZqkHimbdLhnPkd/DjYlPTGpQqWhqS9nhquBEKDuLWAmyI4ILUl5WTs9/S/ +# fmNZJQ96LjlXdqJxqgaKD4kWumGnEcua2A5HmoDF0M2n0O99g/DhO3EJ3110mCII +# YdqwUB5vvfHhAN/nMQekkzr3ZUd46PioSKv33nJ+YWtvd6mBy6cJrDm77MbL2IK0 +# cs0d9LiFAR6A+xuJKlQ5slvayA1VmXqHczsI5pgt6o3gMy4SKfXAL1QnIffIrE7a +# KLixqduWsqdCosnPGUFN4Ib5KpqjEWYw07t0MkvfY3v1mYovG8chr1m1rtxEPJdQ +# cdeh0sVV42neV8HR3jDA/czmTfsNv11P6Z0eGTgvvM9YBS7vDaBQNdrvCScc1bN+ +# NR4Iuto229Nfj950iEkSMIIE2TCCA8GgAwIBAgITMwAAAKyKIbx60pty9AAAAAAA +# rDANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGlu +# Z3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBv +# cmF0aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDAe +# Fw0xNjA5MDcxNzU2NTRaFw0xODA5MDcxNzU2NTRaMIGyMQswCQYDVQQGEwJVUzET +# MBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMV +# TWljcm9zb2Z0IENvcnBvcmF0aW9uMQwwCgYDVQQLEwNBT0MxJzAlBgNVBAsTHm5D +# aXBoZXIgRFNFIEVTTjoxMkU3LTMwNjQtNjExMjElMCMGA1UEAxMcTWljcm9zb2Z0 +# IFRpbWUtU3RhbXAgU2VydmljZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +# ggEBAKHE9DyljnMxoRdBXKt3CLep0UOqu9/cdPm6NVZqhAnYqbv7VPcY2cals0Po +# +iYBzD019X4L5EyYKtOGlSUFXN67Ow0vYuyP2Yx0rzeLF5trN6dKsDStcsiJ9YHM +# odU/qPOxBaj3pwe6QdmojzFGne1iK+Bqm3ksuuf1GbYmf4TSHaUoM7Dmwi15mKuI +# 4w8fZnua2BhebIHxOGB0Hjqnp+s0alxevXWlrVWSV2XSJjqgEApBBLEnkGfg3u6L +# laPnAOQNnMYCDqfWm0w9M8mEva6ixbzhiOdKn/ay41qneo6MoRheakbO9qyrmrKo +# /K9+p+Sw580Fome1+kLx0gMkqucCAwEAAaOCARswggEXMB0GA1UdDgQWBBTYR3Co +# hTWLE2Gvh5DoRRck4JinDTAfBgNVHSMEGDAWgBTVYzpcijGQ80N7fEYbxTNoWoVt +# VTBWBgNVHR8ETzBNMEugSaBHhkVodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtp +# L2NybC9wcm9kdWN0cy9NaWNUaW1TdGFQQ0FfMjAxMC0wNy0wMS5jcmwwWgYIKwYB +# BQUHAQEETjBMMEoGCCsGAQUFBzAChj5odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20v +# cGtpL2NlcnRzL01pY1RpbVN0YVBDQV8yMDEwLTA3LTAxLmNydDAMBgNVHRMBAf8E +# AjAAMBMGA1UdJQQMMAoGCCsGAQUFBwMIMA0GCSqGSIb3DQEBCwUAA4IBAQBI7Ohe +# J8MbGJxdtM52bjcMH11jHA1dpCPSFbTO0EAJ5ZtfrPF57XDtMl5dDHUh9PPUFYkB +# 9WVrscDWjFrQuIX9R/qt9G8QSYaYev3BYRuvfGISuWVMUTZX+Z1gFITB2PvibxAs +# F4VjfsKPHhMV74AH8VCXLeS9+skoNphhNNdMAVgAqmLQBwNNwRJdlyyEn87xRmz1 +# +vQGCs6bmHup5DUIk2YMxUSoSVC39wU7d3GqsAq/cW7+exPkaQAG768iJuDFfq02 +# apxwghcoAuC/vMMhpEABa1dX0vCeay0NRsinx0f+hJWbe0+cI+WsHf4Lby8+e8l1 +# u0mL/I64RN36suf6oYIDdzCCAl8CAQEwgeKhgbikgbUwgbIxCzAJBgNVBAYTAlVT +# MRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQK +# ExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xDDAKBgNVBAsTA0FPQzEnMCUGA1UECxMe +# bkNpcGhlciBEU0UgRVNOOjEyRTctMzA2NC02MTEyMSUwIwYDVQQDExxNaWNyb3Nv +# ZnQgVGltZS1TdGFtcCBTZXJ2aWNloiUKAQEwCQYFKw4DAhoFAAMVADlwJYsUyHnd +# Xwxd6Yucs5SZ9xy3oIHBMIG+pIG7MIG4MQswCQYDVQQGEwJVUzETMBEGA1UECBMK +# V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0 +# IENvcnBvcmF0aW9uMQwwCgYDVQQLEwNBT0MxJzAlBgNVBAsTHm5DaXBoZXIgTlRT +# IEVTTjoyNjY1LTRDM0YtQzVERTErMCkGA1UEAxMiTWljcm9zb2Z0IFRpbWUgU291 +# cmNlIE1hc3RlciBDbG9jazANBgkqhkiG9w0BAQUFAAIFAN6xBY8wIhgPMjAxODA1 +# MjQwOTM0MDdaGA8yMDE4MDUyNTA5MzQwN1owdzA9BgorBgEEAYRZCgQBMS8wLTAK +# AgUA3rEFjwIBADAKAgEAAgIYPAIB/zAHAgEAAgIZwjAKAgUA3rJXDwIBADA2Bgor +# BgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZCgMBoAowCAIBAAIDFuNgoQowCAIBAAID +# B6EgMA0GCSqGSIb3DQEBBQUAA4IBAQA1d5K4vch69zMYuKyGW9moanhGQBoup+tt +# SAVlCUvRk/Ij5IFhtawoCw1qSS3XKEdCRLabGBMSVuEvyEXTufqjM/HNk+nLJn8M +# bxyggYZUA0r2OefqtjZfy1zwyXvoo/SAsIqQQcnB9qlkubGR1/+wr0qODVce1lcs +# WAF3nxD55xzgLWkzFGd6sC20rF8lOE0rLEPKfkt1YuWzwVhL74N+DQqjGR/BhIzJ +# ocyFurU3O4uR5sZQxjn7v56ekdi2vjGTFfZbmvMh85jJOQSA1cfespWtL+nOOZHb +# KR7wg7LcOmvap3lazKeljFa44+Ctp7f465094XLB60ZVYwUxFG5JMYIC9TCCAvEC +# AQEwgZMwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNV +# BAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQG +# A1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTACEzMAAACsiiG8etKb +# cvQAAAAAAKwwDQYJYIZIAWUDBAIBBQCgggEyMBoGCSqGSIb3DQEJAzENBgsqhkiG +# 9w0BCRABBDAvBgkqhkiG9w0BCQQxIgQgD3WzFV8+wddtu9RuOLrh8hRBZhRqijVu +# tbhvXeOaOp4wgeIGCyqGSIb3DQEJEAIMMYHSMIHPMIHMMIGxBBQ5cCWLFMh53V8M +# XemLnLOUmfcctzCBmDCBgKR+MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNo +# aW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29y +# cG9yYXRpb24xJjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEw +# AhMzAAAArIohvHrSm3L0AAAAAACsMBYEFIawotnCyXNawsU/d5aJcMJYXJBRMA0G +# CSqGSIb3DQEBCwUABIIBAFBe5buMx7WN5ms0WcoxL2k58P3sRI8dMJv5Lo9eCnYd +# cZcMWUEPQcZM3g9Ic+bYRLI0+FzHC2molZ29Z1O4sy0Ms1+IDRxdWUaLq0edDBP4 +# 9SsOCVMrJrvHstQv5Pefy+b3YoN65P4GvedkoicqwUFnjIPjkTaSVYhYtc0jUyNq +# yshQKVo+EGzuTDf2Jy4mETQT0NYCwftARzbzXVflajmVfN9IkSwVjIyTrHQCmYwq +# kI5JBTx544Vh6dYGhMTBjeiooSnwW5yVNxQUmv6FLRhRdRcVN6X8J39nuh3HmSR4 +# RKgrDPI/2o4s67nIhyEpc7M+IzSvXh6PoBRDBrxIl1M= +# SIG # End signature block diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/.signature.p7s b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/.signature.p7s new file mode 100644 index 0000000..9fe0dae Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/.signature.p7s differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0.nupkg b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0.nupkg new file mode 100644 index 0000000..92dc9d7 Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0.nupkg differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..5583517 Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..20d7d06 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,678 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Adds the specified to the . + + The . + The . + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The of s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't been already registered. + + The . + The . + + + + Adds the specified to the if the + service type hasn't been already registered. + + The . + The s. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registing a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registing a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + + + + + Removes all services of type in . + + The . + + + + + Removes all services of type in . + + The . + The service type to remove. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + + + Unable to locate implementation '{0}' for service '{1}'. + + + + + Unable to locate implementation '{0}' for service '{1}'. + + + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + + + No service for type '{0}' has been registered. + + + + + No service for type '{0}' has been registered. + + + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + + + + + + + + + + + + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + diff --git a/packages/Microsoft.Web.Infrastructure.1.0.0.0/Microsoft.Web.Infrastructure.1.0.0.0.nupkg b/packages/Microsoft.Web.Infrastructure.1.0.0.0/Microsoft.Web.Infrastructure.1.0.0.0.nupkg new file mode 100644 index 0000000..65c273f Binary files /dev/null and b/packages/Microsoft.Web.Infrastructure.1.0.0.0/Microsoft.Web.Infrastructure.1.0.0.0.nupkg differ diff --git a/packages/Microsoft.Web.Infrastructure.1.0.0.0/lib/net40/Microsoft.Web.Infrastructure.dll b/packages/Microsoft.Web.Infrastructure.1.0.0.0/lib/net40/Microsoft.Web.Infrastructure.dll new file mode 100644 index 0000000..85f1138 Binary files /dev/null and b/packages/Microsoft.Web.Infrastructure.1.0.0.0/lib/net40/Microsoft.Web.Infrastructure.dll differ diff --git a/packages/Modernizr.2.8.3/Content/Scripts/modernizr-2.8.3.js b/packages/Modernizr.2.8.3/Content/Scripts/modernizr-2.8.3.js new file mode 100644 index 0000000..3365339 --- /dev/null +++ b/packages/Modernizr.2.8.3/Content/Scripts/modernizr-2.8.3.js @@ -0,0 +1,1406 @@ +/*! + * Modernizr v2.8.3 + * www.modernizr.com + * + * Copyright (c) Faruk Ates, Paul Irish, Alex Sexton + * Available under the BSD and MIT licenses: www.modernizr.com/license/ + */ + +/* + * Modernizr tests which native CSS3 and HTML5 features are available in + * the current UA and makes the results available to you in two ways: + * as properties on a global Modernizr object, and as classes on the + * element. This information allows you to progressively enhance + * your pages with a granular level of control over the experience. + * + * Modernizr has an optional (not included) conditional resource loader + * called Modernizr.load(), based on Yepnope.js (yepnopejs.com). + * To get a build that includes Modernizr.load(), as well as choosing + * which tests to include, go to www.modernizr.com/download/ + * + * Authors Faruk Ates, Paul Irish, Alex Sexton + * Contributors Ryan Seddon, Ben Alman + */ + +window.Modernizr = (function( window, document, undefined ) { + + var version = '2.8.3', + + Modernizr = {}, + + /*>>cssclasses*/ + // option for enabling the HTML classes to be added + enableClasses = true, + /*>>cssclasses*/ + + docElement = document.documentElement, + + /** + * Create our "modernizr" element that we do most feature tests on. + */ + mod = 'modernizr', + modElem = document.createElement(mod), + mStyle = modElem.style, + + /** + * Create the input element for various Web Forms feature tests. + */ + inputElem /*>>inputelem*/ = document.createElement('input') /*>>inputelem*/ , + + /*>>smile*/ + smile = ':)', + /*>>smile*/ + + toString = {}.toString, + + // TODO :: make the prefixes more granular + /*>>prefixes*/ + // List of property values to set for css tests. See ticket #21 + prefixes = ' -webkit- -moz- -o- -ms- '.split(' '), + /*>>prefixes*/ + + /*>>domprefixes*/ + // Following spec is to expose vendor-specific style properties as: + // elem.style.WebkitBorderRadius + // and the following would be incorrect: + // elem.style.webkitBorderRadius + + // Webkit ghosts their properties in lowercase but Opera & Moz do not. + // Microsoft uses a lowercase `ms` instead of the correct `Ms` in IE8+ + // erik.eae.net/archives/2008/03/10/21.48.10/ + + // More here: github.com/Modernizr/Modernizr/issues/issue/21 + omPrefixes = 'Webkit Moz O ms', + + cssomPrefixes = omPrefixes.split(' '), + + domPrefixes = omPrefixes.toLowerCase().split(' '), + /*>>domprefixes*/ + + /*>>ns*/ + ns = {'svg': 'http://www.w3.org/2000/svg'}, + /*>>ns*/ + + tests = {}, + inputs = {}, + attrs = {}, + + classes = [], + + slice = classes.slice, + + featureName, // used in testing loop + + + /*>>teststyles*/ + // Inject element with style element and some CSS rules + injectElementWithStyles = function( rule, callback, nodes, testnames ) { + + var style, ret, node, docOverflow, + div = document.createElement('div'), + // After page load injecting a fake body doesn't work so check if body exists + body = document.body, + // IE6 and 7 won't return offsetWidth or offsetHeight unless it's in the body element, so we fake it. + fakeBody = body || document.createElement('body'); + + if ( parseInt(nodes, 10) ) { + // In order not to give false positives we create a node for each test + // This also allows the method to scale for unspecified uses + while ( nodes-- ) { + node = document.createElement('div'); + node.id = testnames ? testnames[nodes] : mod + (nodes + 1); + div.appendChild(node); + } + } + + // '].join(''); + div.id = mod; + // IE6 will false positive on some tests due to the style element inside the test div somehow interfering offsetHeight, so insert it into body or fakebody. + // Opera will act all quirky when injecting elements in documentElement when page is served as xml, needs fakebody too. #270 + (body ? div : fakeBody).innerHTML += style; + fakeBody.appendChild(div); + if ( !body ) { + //avoid crashing IE8, if background image is used + fakeBody.style.background = ''; + //Safari 5.13/5.1.4 OSX stops loading if ::-webkit-scrollbar is used and scrollbars are visible + fakeBody.style.overflow = 'hidden'; + docOverflow = docElement.style.overflow; + docElement.style.overflow = 'hidden'; + docElement.appendChild(fakeBody); + } + + ret = callback(div, rule); + // If this is done after page load we don't want to remove the body so check if body exists + if ( !body ) { + fakeBody.parentNode.removeChild(fakeBody); + docElement.style.overflow = docOverflow; + } else { + div.parentNode.removeChild(div); + } + + return !!ret; + + }, + /*>>teststyles*/ + + /*>>mq*/ + // adapted from matchMedia polyfill + // by Scott Jehl and Paul Irish + // gist.github.com/786768 + testMediaQuery = function( mq ) { + + var matchMedia = window.matchMedia || window.msMatchMedia; + if ( matchMedia ) { + return matchMedia(mq) && matchMedia(mq).matches || false; + } + + var bool; + + injectElementWithStyles('@media ' + mq + ' { #' + mod + ' { position: absolute; } }', function( node ) { + bool = (window.getComputedStyle ? + getComputedStyle(node, null) : + node.currentStyle)['position'] == 'absolute'; + }); + + return bool; + + }, + /*>>mq*/ + + + /*>>hasevent*/ + // + // isEventSupported determines if a given element supports the given event + // kangax.github.com/iseventsupported/ + // + // The following results are known incorrects: + // Modernizr.hasEvent("webkitTransitionEnd", elem) // false negative + // Modernizr.hasEvent("textInput") // in Webkit. github.com/Modernizr/Modernizr/issues/333 + // ... + isEventSupported = (function() { + + var TAGNAMES = { + 'select': 'input', 'change': 'input', + 'submit': 'form', 'reset': 'form', + 'error': 'img', 'load': 'img', 'abort': 'img' + }; + + function isEventSupported( eventName, element ) { + + element = element || document.createElement(TAGNAMES[eventName] || 'div'); + eventName = 'on' + eventName; + + // When using `setAttribute`, IE skips "unload", WebKit skips "unload" and "resize", whereas `in` "catches" those + var isSupported = eventName in element; + + if ( !isSupported ) { + // If it has no `setAttribute` (i.e. doesn't implement Node interface), try generic element + if ( !element.setAttribute ) { + element = document.createElement('div'); + } + if ( element.setAttribute && element.removeAttribute ) { + element.setAttribute(eventName, ''); + isSupported = is(element[eventName], 'function'); + + // If property was created, "remove it" (by setting value to `undefined`) + if ( !is(element[eventName], 'undefined') ) { + element[eventName] = undefined; + } + element.removeAttribute(eventName); + } + } + + element = null; + return isSupported; + } + return isEventSupported; + })(), + /*>>hasevent*/ + + // TODO :: Add flag for hasownprop ? didn't last time + + // hasOwnProperty shim by kangax needed for Safari 2.0 support + _hasOwnProperty = ({}).hasOwnProperty, hasOwnProp; + + if ( !is(_hasOwnProperty, 'undefined') && !is(_hasOwnProperty.call, 'undefined') ) { + hasOwnProp = function (object, property) { + return _hasOwnProperty.call(object, property); + }; + } + else { + hasOwnProp = function (object, property) { /* yes, this can give false positives/negatives, but most of the time we don't care about those */ + return ((property in object) && is(object.constructor.prototype[property], 'undefined')); + }; + } + + // Adapted from ES5-shim https://github.com/kriskowal/es5-shim/blob/master/es5-shim.js + // es5.github.com/#x15.3.4.5 + + if (!Function.prototype.bind) { + Function.prototype.bind = function bind(that) { + + var target = this; + + if (typeof target != "function") { + throw new TypeError(); + } + + var args = slice.call(arguments, 1), + bound = function () { + + if (this instanceof bound) { + + var F = function(){}; + F.prototype = target.prototype; + var self = new F(); + + var result = target.apply( + self, + args.concat(slice.call(arguments)) + ); + if (Object(result) === result) { + return result; + } + return self; + + } else { + + return target.apply( + that, + args.concat(slice.call(arguments)) + ); + + } + + }; + + return bound; + }; + } + + /** + * setCss applies given styles to the Modernizr DOM node. + */ + function setCss( str ) { + mStyle.cssText = str; + } + + /** + * setCssAll extrapolates all vendor-specific css strings. + */ + function setCssAll( str1, str2 ) { + return setCss(prefixes.join(str1 + ';') + ( str2 || '' )); + } + + /** + * is returns a boolean for if typeof obj is exactly type. + */ + function is( obj, type ) { + return typeof obj === type; + } + + /** + * contains returns a boolean for if substr is found within str. + */ + function contains( str, substr ) { + return !!~('' + str).indexOf(substr); + } + + /*>>testprop*/ + + // testProps is a generic CSS / DOM property test. + + // In testing support for a given CSS property, it's legit to test: + // `elem.style[styleName] !== undefined` + // If the property is supported it will return an empty string, + // if unsupported it will return undefined. + + // We'll take advantage of this quick test and skip setting a style + // on our modernizr element, but instead just testing undefined vs + // empty string. + + // Because the testing of the CSS property names (with "-", as + // opposed to the camelCase DOM properties) is non-portable and + // non-standard but works in WebKit and IE (but not Gecko or Opera), + // we explicitly reject properties with dashes so that authors + // developing in WebKit or IE first don't end up with + // browser-specific content by accident. + + function testProps( props, prefixed ) { + for ( var i in props ) { + var prop = props[i]; + if ( !contains(prop, "-") && mStyle[prop] !== undefined ) { + return prefixed == 'pfx' ? prop : true; + } + } + return false; + } + /*>>testprop*/ + + // TODO :: add testDOMProps + /** + * testDOMProps is a generic DOM property test; if a browser supports + * a certain property, it won't return undefined for it. + */ + function testDOMProps( props, obj, elem ) { + for ( var i in props ) { + var item = obj[props[i]]; + if ( item !== undefined) { + + // return the property name as a string + if (elem === false) return props[i]; + + // let's bind a function + if (is(item, 'function')){ + // default to autobind unless override + return item.bind(elem || obj); + } + + // return the unbound function or obj or value + return item; + } + } + return false; + } + + /*>>testallprops*/ + /** + * testPropsAll tests a list of DOM properties we want to check against. + * We specify literally ALL possible (known and/or likely) properties on + * the element including the non-vendor prefixed one, for forward- + * compatibility. + */ + function testPropsAll( prop, prefixed, elem ) { + + var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1), + props = (prop + ' ' + cssomPrefixes.join(ucProp + ' ') + ucProp).split(' '); + + // did they call .prefixed('boxSizing') or are we just testing a prop? + if(is(prefixed, "string") || is(prefixed, "undefined")) { + return testProps(props, prefixed); + + // otherwise, they called .prefixed('requestAnimationFrame', window[, elem]) + } else { + props = (prop + ' ' + (domPrefixes).join(ucProp + ' ') + ucProp).split(' '); + return testDOMProps(props, prefixed, elem); + } + } + /*>>testallprops*/ + + + /** + * Tests + * ----- + */ + + // The *new* flexbox + // dev.w3.org/csswg/css3-flexbox + + tests['flexbox'] = function() { + return testPropsAll('flexWrap'); + }; + + // The *old* flexbox + // www.w3.org/TR/2009/WD-css3-flexbox-20090723/ + + tests['flexboxlegacy'] = function() { + return testPropsAll('boxDirection'); + }; + + // On the S60 and BB Storm, getContext exists, but always returns undefined + // so we actually have to call getContext() to verify + // github.com/Modernizr/Modernizr/issues/issue/97/ + + tests['canvas'] = function() { + var elem = document.createElement('canvas'); + return !!(elem.getContext && elem.getContext('2d')); + }; + + tests['canvastext'] = function() { + return !!(Modernizr['canvas'] && is(document.createElement('canvas').getContext('2d').fillText, 'function')); + }; + + // webk.it/70117 is tracking a legit WebGL feature detect proposal + + // We do a soft detect which may false positive in order to avoid + // an expensive context creation: bugzil.la/732441 + + tests['webgl'] = function() { + return !!window.WebGLRenderingContext; + }; + + /* + * The Modernizr.touch test only indicates if the browser supports + * touch events, which does not necessarily reflect a touchscreen + * device, as evidenced by tablets running Windows 7 or, alas, + * the Palm Pre / WebOS (touch) phones. + * + * Additionally, Chrome (desktop) used to lie about its support on this, + * but that has since been rectified: crbug.com/36415 + * + * We also test for Firefox 4 Multitouch Support. + * + * For more info, see: modernizr.github.com/Modernizr/touch.html + */ + + tests['touch'] = function() { + var bool; + + if(('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch) { + bool = true; + } else { + injectElementWithStyles(['@media (',prefixes.join('touch-enabled),('),mod,')','{#modernizr{top:9px;position:absolute}}'].join(''), function( node ) { + bool = node.offsetTop === 9; + }); + } + + return bool; + }; + + + // geolocation is often considered a trivial feature detect... + // Turns out, it's quite tricky to get right: + // + // Using !!navigator.geolocation does two things we don't want. It: + // 1. Leaks memory in IE9: github.com/Modernizr/Modernizr/issues/513 + // 2. Disables page caching in WebKit: webk.it/43956 + // + // Meanwhile, in Firefox < 8, an about:config setting could expose + // a false positive that would throw an exception: bugzil.la/688158 + + tests['geolocation'] = function() { + return 'geolocation' in navigator; + }; + + + tests['postmessage'] = function() { + return !!window.postMessage; + }; + + + // Chrome incognito mode used to throw an exception when using openDatabase + // It doesn't anymore. + tests['websqldatabase'] = function() { + return !!window.openDatabase; + }; + + // Vendors had inconsistent prefixing with the experimental Indexed DB: + // - Webkit's implementation is accessible through webkitIndexedDB + // - Firefox shipped moz_indexedDB before FF4b9, but since then has been mozIndexedDB + // For speed, we don't test the legacy (and beta-only) indexedDB + tests['indexedDB'] = function() { + return !!testPropsAll("indexedDB", window); + }; + + // documentMode logic from YUI to filter out IE8 Compat Mode + // which false positives. + tests['hashchange'] = function() { + return isEventSupported('hashchange', window) && (document.documentMode === undefined || document.documentMode > 7); + }; + + // Per 1.6: + // This used to be Modernizr.historymanagement but the longer + // name has been deprecated in favor of a shorter and property-matching one. + // The old API is still available in 1.6, but as of 2.0 will throw a warning, + // and in the first release thereafter disappear entirely. + tests['history'] = function() { + return !!(window.history && history.pushState); + }; + + tests['draganddrop'] = function() { + var div = document.createElement('div'); + return ('draggable' in div) || ('ondragstart' in div && 'ondrop' in div); + }; + + // FF3.6 was EOL'ed on 4/24/12, but the ESR version of FF10 + // will be supported until FF19 (2/12/13), at which time, ESR becomes FF17. + // FF10 still uses prefixes, so check for it until then. + // for more ESR info, see: mozilla.org/en-US/firefox/organizations/faq/ + tests['websockets'] = function() { + return 'WebSocket' in window || 'MozWebSocket' in window; + }; + + + // css-tricks.com/rgba-browser-support/ + tests['rgba'] = function() { + // Set an rgba() color and check the returned value + + setCss('background-color:rgba(150,255,150,.5)'); + + return contains(mStyle.backgroundColor, 'rgba'); + }; + + tests['hsla'] = function() { + // Same as rgba(), in fact, browsers re-map hsla() to rgba() internally, + // except IE9 who retains it as hsla + + setCss('background-color:hsla(120,40%,100%,.5)'); + + return contains(mStyle.backgroundColor, 'rgba') || contains(mStyle.backgroundColor, 'hsla'); + }; + + tests['multiplebgs'] = function() { + // Setting multiple images AND a color on the background shorthand property + // and then querying the style.background property value for the number of + // occurrences of "url(" is a reliable method for detecting ACTUAL support for this! + + setCss('background:url(https://),url(https://),red url(https://)'); + + // If the UA supports multiple backgrounds, there should be three occurrences + // of the string "url(" in the return value for elemStyle.background + + return (/(url\s*\(.*?){3}/).test(mStyle.background); + }; + + + + // this will false positive in Opera Mini + // github.com/Modernizr/Modernizr/issues/396 + + tests['backgroundsize'] = function() { + return testPropsAll('backgroundSize'); + }; + + tests['borderimage'] = function() { + return testPropsAll('borderImage'); + }; + + + // Super comprehensive table about all the unique implementations of + // border-radius: muddledramblings.com/table-of-css3-border-radius-compliance + + tests['borderradius'] = function() { + return testPropsAll('borderRadius'); + }; + + // WebOS unfortunately false positives on this test. + tests['boxshadow'] = function() { + return testPropsAll('boxShadow'); + }; + + // FF3.0 will false positive on this test + tests['textshadow'] = function() { + return document.createElement('div').style.textShadow === ''; + }; + + + tests['opacity'] = function() { + // Browsers that actually have CSS Opacity implemented have done so + // according to spec, which means their return values are within the + // range of [0.0,1.0] - including the leading zero. + + setCssAll('opacity:.55'); + + // The non-literal . in this regex is intentional: + // German Chrome returns this value as 0,55 + // github.com/Modernizr/Modernizr/issues/#issue/59/comment/516632 + return (/^0.55$/).test(mStyle.opacity); + }; + + + // Note, Android < 4 will pass this test, but can only animate + // a single property at a time + // goo.gl/v3V4Gp + tests['cssanimations'] = function() { + return testPropsAll('animationName'); + }; + + + tests['csscolumns'] = function() { + return testPropsAll('columnCount'); + }; + + + tests['cssgradients'] = function() { + /** + * For CSS Gradients syntax, please see: + * webkit.org/blog/175/introducing-css-gradients/ + * developer.mozilla.org/en/CSS/-moz-linear-gradient + * developer.mozilla.org/en/CSS/-moz-radial-gradient + * dev.w3.org/csswg/css3-images/#gradients- + */ + + var str1 = 'background-image:', + str2 = 'gradient(linear,left top,right bottom,from(#9f9),to(white));', + str3 = 'linear-gradient(left top,#9f9, white);'; + + setCss( + // legacy webkit syntax (FIXME: remove when syntax not in use anymore) + (str1 + '-webkit- '.split(' ').join(str2 + str1) + + // standard syntax // trailing 'background-image:' + prefixes.join(str3 + str1)).slice(0, -str1.length) + ); + + return contains(mStyle.backgroundImage, 'gradient'); + }; + + + tests['cssreflections'] = function() { + return testPropsAll('boxReflect'); + }; + + + tests['csstransforms'] = function() { + return !!testPropsAll('transform'); + }; + + + tests['csstransforms3d'] = function() { + + var ret = !!testPropsAll('perspective'); + + // Webkit's 3D transforms are passed off to the browser's own graphics renderer. + // It works fine in Safari on Leopard and Snow Leopard, but not in Chrome in + // some conditions. As a result, Webkit typically recognizes the syntax but + // will sometimes throw a false positive, thus we must do a more thorough check: + if ( ret && 'webkitPerspective' in docElement.style ) { + + // Webkit allows this media query to succeed only if the feature is enabled. + // `@media (transform-3d),(-webkit-transform-3d){ ... }` + injectElementWithStyles('@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}', function( node, rule ) { + ret = node.offsetLeft === 9 && node.offsetHeight === 3; + }); + } + return ret; + }; + + + tests['csstransitions'] = function() { + return testPropsAll('transition'); + }; + + + /*>>fontface*/ + // @font-face detection routine by Diego Perini + // javascript.nwbox.com/CSSSupport/ + + // false positives: + // WebOS github.com/Modernizr/Modernizr/issues/342 + // WP7 github.com/Modernizr/Modernizr/issues/538 + tests['fontface'] = function() { + var bool; + + injectElementWithStyles('@font-face {font-family:"font";src:url("https://")}', function( node, rule ) { + var style = document.getElementById('smodernizr'), + sheet = style.sheet || style.styleSheet, + cssText = sheet ? (sheet.cssRules && sheet.cssRules[0] ? sheet.cssRules[0].cssText : sheet.cssText || '') : ''; + + bool = /src/i.test(cssText) && cssText.indexOf(rule.split(' ')[0]) === 0; + }); + + return bool; + }; + /*>>fontface*/ + + // CSS generated content detection + tests['generatedcontent'] = function() { + var bool; + + injectElementWithStyles(['#',mod,'{font:0/0 a}#',mod,':after{content:"',smile,'";visibility:hidden;font:3px/1 a}'].join(''), function( node ) { + bool = node.offsetHeight >= 3; + }); + + return bool; + }; + + + + // These tests evaluate support of the video/audio elements, as well as + // testing what types of content they support. + // + // We're using the Boolean constructor here, so that we can extend the value + // e.g. Modernizr.video // true + // Modernizr.video.ogg // 'probably' + // + // Codec values from : github.com/NielsLeenheer/html5test/blob/9106a8/index.html#L845 + // thx to NielsLeenheer and zcorpan + + // Note: in some older browsers, "no" was a return value instead of empty string. + // It was live in FF3.5.0 and 3.5.1, but fixed in 3.5.2 + // It was also live in Safari 4.0.0 - 4.0.4, but fixed in 4.0.5 + + tests['video'] = function() { + var elem = document.createElement('video'), + bool = false; + + // IE9 Running on Windows Server SKU can cause an exception to be thrown, bug #224 + try { + if ( bool = !!elem.canPlayType ) { + bool = new Boolean(bool); + bool.ogg = elem.canPlayType('video/ogg; codecs="theora"') .replace(/^no$/,''); + + // Without QuickTime, this value will be `undefined`. github.com/Modernizr/Modernizr/issues/546 + bool.h264 = elem.canPlayType('video/mp4; codecs="avc1.42E01E"') .replace(/^no$/,''); + + bool.webm = elem.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,''); + } + + } catch(e) { } + + return bool; + }; + + tests['audio'] = function() { + var elem = document.createElement('audio'), + bool = false; + + try { + if ( bool = !!elem.canPlayType ) { + bool = new Boolean(bool); + bool.ogg = elem.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,''); + bool.mp3 = elem.canPlayType('audio/mpeg;') .replace(/^no$/,''); + + // Mimetypes accepted: + // developer.mozilla.org/En/Media_formats_supported_by_the_audio_and_video_elements + // bit.ly/iphoneoscodecs + bool.wav = elem.canPlayType('audio/wav; codecs="1"') .replace(/^no$/,''); + bool.m4a = ( elem.canPlayType('audio/x-m4a;') || + elem.canPlayType('audio/aac;')) .replace(/^no$/,''); + } + } catch(e) { } + + return bool; + }; + + + // In FF4, if disabled, window.localStorage should === null. + + // Normally, we could not test that directly and need to do a + // `('localStorage' in window) && ` test first because otherwise Firefox will + // throw bugzil.la/365772 if cookies are disabled + + // Also in iOS5 Private Browsing mode, attempting to use localStorage.setItem + // will throw the exception: + // QUOTA_EXCEEDED_ERRROR DOM Exception 22. + // Peculiarly, getItem and removeItem calls do not throw. + + // Because we are forced to try/catch this, we'll go aggressive. + + // Just FWIW: IE8 Compat mode supports these features completely: + // www.quirksmode.org/dom/html5.html + // But IE8 doesn't support either with local files + + tests['localstorage'] = function() { + try { + localStorage.setItem(mod, mod); + localStorage.removeItem(mod); + return true; + } catch(e) { + return false; + } + }; + + tests['sessionstorage'] = function() { + try { + sessionStorage.setItem(mod, mod); + sessionStorage.removeItem(mod); + return true; + } catch(e) { + return false; + } + }; + + + tests['webworkers'] = function() { + return !!window.Worker; + }; + + + tests['applicationcache'] = function() { + return !!window.applicationCache; + }; + + + // Thanks to Erik Dahlstrom + tests['svg'] = function() { + return !!document.createElementNS && !!document.createElementNS(ns.svg, 'svg').createSVGRect; + }; + + // specifically for SVG inline in HTML, not within XHTML + // test page: paulirish.com/demo/inline-svg + tests['inlinesvg'] = function() { + var div = document.createElement('div'); + div.innerHTML = ''; + return (div.firstChild && div.firstChild.namespaceURI) == ns.svg; + }; + + // SVG SMIL animation + tests['smil'] = function() { + return !!document.createElementNS && /SVGAnimate/.test(toString.call(document.createElementNS(ns.svg, 'animate'))); + }; + + // This test is only for clip paths in SVG proper, not clip paths on HTML content + // demo: srufaculty.sru.edu/david.dailey/svg/newstuff/clipPath4.svg + + // However read the comments to dig into applying SVG clippaths to HTML content here: + // github.com/Modernizr/Modernizr/issues/213#issuecomment-1149491 + tests['svgclippaths'] = function() { + return !!document.createElementNS && /SVGClipPath/.test(toString.call(document.createElementNS(ns.svg, 'clipPath'))); + }; + + /*>>webforms*/ + // input features and input types go directly onto the ret object, bypassing the tests loop. + // Hold this guy to execute in a moment. + function webforms() { + /*>>input*/ + // Run through HTML5's new input attributes to see if the UA understands any. + // We're using f which is the element created early on + // Mike Taylr has created a comprehensive resource for testing these attributes + // when applied to all input types: + // miketaylr.com/code/input-type-attr.html + // spec: www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#input-type-attr-summary + + // Only input placeholder is tested while textarea's placeholder is not. + // Currently Safari 4 and Opera 11 have support only for the input placeholder + // Both tests are available in feature-detects/forms-placeholder.js + Modernizr['input'] = (function( props ) { + for ( var i = 0, len = props.length; i < len; i++ ) { + attrs[ props[i] ] = !!(props[i] in inputElem); + } + if (attrs.list){ + // safari false positive's on datalist: webk.it/74252 + // see also github.com/Modernizr/Modernizr/issues/146 + attrs.list = !!(document.createElement('datalist') && window.HTMLDataListElement); + } + return attrs; + })('autocomplete autofocus list placeholder max min multiple pattern required step'.split(' ')); + /*>>input*/ + + /*>>inputtypes*/ + // Run through HTML5's new input types to see if the UA understands any. + // This is put behind the tests runloop because it doesn't return a + // true/false like all the other tests; instead, it returns an object + // containing each input type with its corresponding true/false value + + // Big thanks to @miketaylr for the html5 forms expertise. miketaylr.com/ + Modernizr['inputtypes'] = (function(props) { + + for ( var i = 0, bool, inputElemType, defaultView, len = props.length; i < len; i++ ) { + + inputElem.setAttribute('type', inputElemType = props[i]); + bool = inputElem.type !== 'text'; + + // We first check to see if the type we give it sticks.. + // If the type does, we feed it a textual value, which shouldn't be valid. + // If the value doesn't stick, we know there's input sanitization which infers a custom UI + if ( bool ) { + + inputElem.value = smile; + inputElem.style.cssText = 'position:absolute;visibility:hidden;'; + + if ( /^range$/.test(inputElemType) && inputElem.style.WebkitAppearance !== undefined ) { + + docElement.appendChild(inputElem); + defaultView = document.defaultView; + + // Safari 2-4 allows the smiley as a value, despite making a slider + bool = defaultView.getComputedStyle && + defaultView.getComputedStyle(inputElem, null).WebkitAppearance !== 'textfield' && + // Mobile android web browser has false positive, so must + // check the height to see if the widget is actually there. + (inputElem.offsetHeight !== 0); + + docElement.removeChild(inputElem); + + } else if ( /^(search|tel)$/.test(inputElemType) ){ + // Spec doesn't define any special parsing or detectable UI + // behaviors so we pass these through as true + + // Interestingly, opera fails the earlier test, so it doesn't + // even make it here. + + } else if ( /^(url|email)$/.test(inputElemType) ) { + // Real url and email support comes with prebaked validation. + bool = inputElem.checkValidity && inputElem.checkValidity() === false; + + } else { + // If the upgraded input compontent rejects the :) text, we got a winner + bool = inputElem.value != smile; + } + } + + inputs[ props[i] ] = !!bool; + } + return inputs; + })('search tel url email datetime date month week time datetime-local number range color'.split(' ')); + /*>>inputtypes*/ + } + /*>>webforms*/ + + + // End of test definitions + // ----------------------- + + + + // Run through all tests and detect their support in the current UA. + // todo: hypothetically we could be doing an array of tests and use a basic loop here. + for ( var feature in tests ) { + if ( hasOwnProp(tests, feature) ) { + // run the test, throw the return value into the Modernizr, + // then based on that boolean, define an appropriate className + // and push it into an array of classes we'll join later. + featureName = feature.toLowerCase(); + Modernizr[featureName] = tests[feature](); + + classes.push((Modernizr[featureName] ? '' : 'no-') + featureName); + } + } + + /*>>webforms*/ + // input tests need to run. + Modernizr.input || webforms(); + /*>>webforms*/ + + + /** + * addTest allows the user to define their own feature tests + * the result will be added onto the Modernizr object, + * as well as an appropriate className set on the html element + * + * @param feature - String naming the feature + * @param test - Function returning true if feature is supported, false if not + */ + Modernizr.addTest = function ( feature, test ) { + if ( typeof feature == 'object' ) { + for ( var key in feature ) { + if ( hasOwnProp( feature, key ) ) { + Modernizr.addTest( key, feature[ key ] ); + } + } + } else { + + feature = feature.toLowerCase(); + + if ( Modernizr[feature] !== undefined ) { + // we're going to quit if you're trying to overwrite an existing test + // if we were to allow it, we'd do this: + // var re = new RegExp("\\b(no-)?" + feature + "\\b"); + // docElement.className = docElement.className.replace( re, '' ); + // but, no rly, stuff 'em. + return Modernizr; + } + + test = typeof test == 'function' ? test() : test; + + if (typeof enableClasses !== "undefined" && enableClasses) { + docElement.className += ' ' + (test ? '' : 'no-') + feature; + } + Modernizr[feature] = test; + + } + + return Modernizr; // allow chaining. + }; + + + // Reset modElem.cssText to nothing to reduce memory footprint. + setCss(''); + modElem = inputElem = null; + + /*>>shiv*/ + /** + * @preserve HTML5 Shiv prev3.7.1 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed + */ + ;(function(window, document) { + /*jshint evil:true */ + /** version */ + var version = '3.7.0'; + + /** Preset options */ + var options = window.html5 || {}; + + /** Used to skip problem elements */ + var reSkip = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i; + + /** Not all elements can be cloned in IE **/ + var saveClones = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i; + + /** Detect whether the browser supports default html5 styles */ + var supportsHtml5Styles; + + /** Name of the expando, to work with multiple documents or to re-shiv one document */ + var expando = '_html5shiv'; + + /** The id for the the documents expando */ + var expanID = 0; + + /** Cached data for each document */ + var expandoData = {}; + + /** Detect whether the browser supports unknown elements */ + var supportsUnknownElements; + + (function() { + try { + var a = document.createElement('a'); + a.innerHTML = ''; + //if the hidden property is implemented we can assume, that the browser supports basic HTML5 Styles + supportsHtml5Styles = ('hidden' in a); + + supportsUnknownElements = a.childNodes.length == 1 || (function() { + // assign a false positive if unable to shiv + (document.createElement)('a'); + var frag = document.createDocumentFragment(); + return ( + typeof frag.cloneNode == 'undefined' || + typeof frag.createDocumentFragment == 'undefined' || + typeof frag.createElement == 'undefined' + ); + }()); + } catch(e) { + // assign a false positive if detection fails => unable to shiv + supportsHtml5Styles = true; + supportsUnknownElements = true; + } + + }()); + + /*--------------------------------------------------------------------------*/ + + /** + * Creates a style sheet with the given CSS text and adds it to the document. + * @private + * @param {Document} ownerDocument The document. + * @param {String} cssText The CSS text. + * @returns {StyleSheet} The style element. + */ + function addStyleSheet(ownerDocument, cssText) { + var p = ownerDocument.createElement('p'), + parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement; + + p.innerHTML = 'x'; + return parent.insertBefore(p.lastChild, parent.firstChild); + } + + /** + * Returns the value of `html5.elements` as an array. + * @private + * @returns {Array} An array of shived element node names. + */ + function getElements() { + var elements = html5.elements; + return typeof elements == 'string' ? elements.split(' ') : elements; + } + + /** + * Returns the data associated to the given document + * @private + * @param {Document} ownerDocument The document. + * @returns {Object} An object of data. + */ + function getExpandoData(ownerDocument) { + var data = expandoData[ownerDocument[expando]]; + if (!data) { + data = {}; + expanID++; + ownerDocument[expando] = expanID; + expandoData[expanID] = data; + } + return data; + } + + /** + * returns a shived element for the given nodeName and document + * @memberOf html5 + * @param {String} nodeName name of the element + * @param {Document} ownerDocument The context document. + * @returns {Object} The shived element. + */ + function createElement(nodeName, ownerDocument, data){ + if (!ownerDocument) { + ownerDocument = document; + } + if(supportsUnknownElements){ + return ownerDocument.createElement(nodeName); + } + if (!data) { + data = getExpandoData(ownerDocument); + } + var node; + + if (data.cache[nodeName]) { + node = data.cache[nodeName].cloneNode(); + } else if (saveClones.test(nodeName)) { + node = (data.cache[nodeName] = data.createElem(nodeName)).cloneNode(); + } else { + node = data.createElem(nodeName); + } + + // Avoid adding some elements to fragments in IE < 9 because + // * Attributes like `name` or `type` cannot be set/changed once an element + // is inserted into a document/fragment + // * Link elements with `src` attributes that are inaccessible, as with + // a 403 response, will cause the tab/window to crash + // * Script elements appended to fragments will execute when their `src` + // or `text` property is set + return node.canHaveChildren && !reSkip.test(nodeName) && !node.tagUrn ? data.frag.appendChild(node) : node; + } + + /** + * returns a shived DocumentFragment for the given document + * @memberOf html5 + * @param {Document} ownerDocument The context document. + * @returns {Object} The shived DocumentFragment. + */ + function createDocumentFragment(ownerDocument, data){ + if (!ownerDocument) { + ownerDocument = document; + } + if(supportsUnknownElements){ + return ownerDocument.createDocumentFragment(); + } + data = data || getExpandoData(ownerDocument); + var clone = data.frag.cloneNode(), + i = 0, + elems = getElements(), + l = elems.length; + for(;i>shiv*/ + + // Assign private properties to the return object with prefix + Modernizr._version = version; + + // expose these for the plugin API. Look in the source for how to join() them against your input + /*>>prefixes*/ + Modernizr._prefixes = prefixes; + /*>>prefixes*/ + /*>>domprefixes*/ + Modernizr._domPrefixes = domPrefixes; + Modernizr._cssomPrefixes = cssomPrefixes; + /*>>domprefixes*/ + + /*>>mq*/ + // Modernizr.mq tests a given media query, live against the current state of the window + // A few important notes: + // * If a browser does not support media queries at all (eg. oldIE) the mq() will always return false + // * A max-width or orientation query will be evaluated against the current state, which may change later. + // * You must specify values. Eg. If you are testing support for the min-width media query use: + // Modernizr.mq('(min-width:0)') + // usage: + // Modernizr.mq('only screen and (max-width:768)') + Modernizr.mq = testMediaQuery; + /*>>mq*/ + + /*>>hasevent*/ + // Modernizr.hasEvent() detects support for a given event, with an optional element to test on + // Modernizr.hasEvent('gesturestart', elem) + Modernizr.hasEvent = isEventSupported; + /*>>hasevent*/ + + /*>>testprop*/ + // Modernizr.testProp() investigates whether a given style property is recognized + // Note that the property names must be provided in the camelCase variant. + // Modernizr.testProp('pointerEvents') + Modernizr.testProp = function(prop){ + return testProps([prop]); + }; + /*>>testprop*/ + + /*>>testallprops*/ + // Modernizr.testAllProps() investigates whether a given style property, + // or any of its vendor-prefixed variants, is recognized + // Note that the property names must be provided in the camelCase variant. + // Modernizr.testAllProps('boxSizing') + Modernizr.testAllProps = testPropsAll; + /*>>testallprops*/ + + + /*>>teststyles*/ + // Modernizr.testStyles() allows you to add custom styles to the document and test an element afterwards + // Modernizr.testStyles('#modernizr { position:absolute }', function(elem, rule){ ... }) + Modernizr.testStyles = injectElementWithStyles; + /*>>teststyles*/ + + + /*>>prefixed*/ + // Modernizr.prefixed() returns the prefixed or nonprefixed property name variant of your input + // Modernizr.prefixed('boxSizing') // 'MozBoxSizing' + + // Properties must be passed as dom-style camelcase, rather than `box-sizing` hypentated style. + // Return values will also be the camelCase variant, if you need to translate that to hypenated style use: + // + // str.replace(/([A-Z])/g, function(str,m1){ return '-' + m1.toLowerCase(); }).replace(/^ms-/,'-ms-'); + + // If you're trying to ascertain which transition end event to bind to, you might do something like... + // + // var transEndEventNames = { + // 'WebkitTransition' : 'webkitTransitionEnd', + // 'MozTransition' : 'transitionend', + // 'OTransition' : 'oTransitionEnd', + // 'msTransition' : 'MSTransitionEnd', + // 'transition' : 'transitionend' + // }, + // transEndEventName = transEndEventNames[ Modernizr.prefixed('transition') ]; + + Modernizr.prefixed = function(prop, obj, elem){ + if(!obj) { + return testPropsAll(prop, 'pfx'); + } else { + // Testing DOM property e.g. Modernizr.prefixed('requestAnimationFrame', window) // 'mozRequestAnimationFrame' + return testPropsAll(prop, obj, elem); + } + }; + /*>>prefixed*/ + + + /*>>cssclasses*/ + // Remove "no-js" class from element, if it exists: + docElement.className = docElement.className.replace(/(^|\s)no-js(\s|$)/, '$1$2') + + + // Add the new classes to the element. + (enableClasses ? ' js ' + classes.join(' ') : ''); + /*>>cssclasses*/ + + return Modernizr; + +})(this, this.document); diff --git a/packages/Modernizr.2.8.3/Modernizr.2.8.3.nupkg b/packages/Modernizr.2.8.3/Modernizr.2.8.3.nupkg new file mode 100644 index 0000000..64fb86e Binary files /dev/null and b/packages/Modernizr.2.8.3/Modernizr.2.8.3.nupkg differ diff --git a/packages/Modernizr.2.8.3/Tools/common.ps1 b/packages/Modernizr.2.8.3/Tools/common.ps1 new file mode 100644 index 0000000..b061c65 --- /dev/null +++ b/packages/Modernizr.2.8.3/Tools/common.ps1 @@ -0,0 +1,75 @@ +function AddOrUpdate-Reference($scriptsFolderProjectItem, $fileNamePattern, $newFileName) { + try { + $referencesFileProjectItem = $scriptsFolderProjectItem.ProjectItems.Item("_references.js") + } + catch { + # _references.js file not found + return + } + + if ($referencesFileProjectItem -eq $null) { + # _references.js file not found + return + } + + $referencesFilePath = $referencesFileProjectItem.FileNames(1) + $referencesTempFilePath = Join-Path $env:TEMP "_references.tmp.js" + + if ((Select-String $referencesFilePath -pattern $fileNamePattern).Length -eq 0) { + # File has no existing matching reference line + # Add the full reference line to the beginning of the file + "/// " | Add-Content $referencesTempFilePath -Encoding UTF8 + Get-Content $referencesFilePath | Add-Content $referencesTempFilePath + } + else { + # Loop through file and replace old file name with new file name + Get-Content $referencesFilePath | ForEach-Object { $_ -replace $fileNamePattern, $newFileName } > $referencesTempFilePath + } + + # Copy over the new _references.js file + Copy-Item $referencesTempFilePath $referencesFilePath -Force + Remove-Item $referencesTempFilePath -Force +} + +function Remove-Reference($scriptsFolderProjectItem, $fileNamePattern) { + try { + $referencesFileProjectItem = $scriptsFolderProjectItem.ProjectItems.Item("_references.js") + } + catch { + # _references.js file not found + return + } + + if ($referencesFileProjectItem -eq $null) { + return + } + + $referencesFilePath = $referencesFileProjectItem.FileNames(1) + $referencesTempFilePath = Join-Path $env:TEMP "_references.tmp.js" + + if ((Select-String $referencesFilePath -pattern $fileNamePattern).Length -eq 1) { + # Delete the line referencing the file + Get-Content $referencesFilePath | ForEach-Object { if (-not ($_ -match $fileNamePattern)) { $_ } } > $referencesTempFilePath + + # Copy over the new _references.js file + Copy-Item $referencesTempFilePath $referencesFilePath -Force + Remove-Item $referencesTempFilePath -Force + } +} + +# Extract the version number from the file in the package's content\scripts folder +$packageScriptsFolder = Join-Path $installPath Content\Scripts +$modernizrFileName = Join-Path $packageScriptsFolder "modernizr-*.js" | Get-ChildItem -Exclude "*.min.js","*-vsdoc.js" | Split-Path -Leaf +$modernizrFileNameRegEx = "modernizr-((?:\d+\.)?(?:\d+\.)?(?:\d+\.)?(?:\d+)).js" +$modernizrFileName -match $modernizrFileNameRegEx +$ver = $matches[1] + +# Get the project item for the scripts folder +try { + $scriptsFolderProjectItem = $project.ProjectItems.Item("Scripts") + $projectScriptsFolderPath = $scriptsFolderProjectItem.FileNames(1) +} +catch { + # No Scripts folder + Write-Host "No scripts folder found" +} \ No newline at end of file diff --git a/packages/Modernizr.2.8.3/Tools/install.ps1 b/packages/Modernizr.2.8.3/Tools/install.ps1 new file mode 100644 index 0000000..8a71107 --- /dev/null +++ b/packages/Modernizr.2.8.3/Tools/install.ps1 @@ -0,0 +1,12 @@ +param($installPath, $toolsPath, $package, $project) + +. (Join-Path $toolsPath common.ps1) + +if ($scriptsFolderProjectItem -eq $null) { + # No Scripts folder + Write-Host "No Scripts folder found" + exit +} + +# Update the _references.js file +AddOrUpdate-Reference $scriptsFolderProjectItem $modernizrFileNameRegEx $modernizrFileName \ No newline at end of file diff --git a/packages/Modernizr.2.8.3/Tools/uninstall.ps1 b/packages/Modernizr.2.8.3/Tools/uninstall.ps1 new file mode 100644 index 0000000..13c5c16 --- /dev/null +++ b/packages/Modernizr.2.8.3/Tools/uninstall.ps1 @@ -0,0 +1,6 @@ +param($installPath, $toolsPath, $package, $project) + +. (Join-Path $toolsPath common.ps1) + +# Update the _references.js file +Remove-Reference $scriptsFolderProjectItem $modernizrFileNameRegEx \ No newline at end of file diff --git a/packages/Newtonsoft.Json.11.0.1/LICENSE.md b/packages/Newtonsoft.Json.11.0.1/LICENSE.md new file mode 100644 index 0000000..dfaadbe --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/LICENSE.md @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/packages/Newtonsoft.Json.11.0.1/Newtonsoft.Json.11.0.1.nupkg b/packages/Newtonsoft.Json.11.0.1/Newtonsoft.Json.11.0.1.nupkg new file mode 100644 index 0000000..e984987 Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/Newtonsoft.Json.11.0.1.nupkg differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net20/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/net20/Newtonsoft.Json.dll new file mode 100644 index 0000000..1d6b482 Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/net20/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net20/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/net20/Newtonsoft.Json.xml new file mode 100644 index 0000000..f0307d4 --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/net20/Newtonsoft.Json.xml @@ -0,0 +1,9967 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Represents a JSON property. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. + When the or + + methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Represents a raw JSON string. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Provides a set of static (Shared in Visual Basic) methods for + querying objects that implement . + + + + + Returns the input typed as . + + + + + Returns an empty that has the + specified type argument. + + + + + Converts the elements of an to the + specified type. + + + + + Filters the elements of an based on a specified type. + + + + + Generates a sequence of integral numbers within a specified range. + + The value of the first integer in the sequence. + The number of sequential integers to generate. + + + + Generates a sequence that contains one repeated value. + + + + + Filters a sequence of values based on a predicate. + + + + + Filters a sequence of values based on a predicate. + Each element's index is used in the logic of the predicate function. + + + + + Projects each element of a sequence into a new form. + + + + + Projects each element of a sequence into a new form by + incorporating the element's index. + + + + + Projects each element of a sequence to an + and flattens the resulting sequences into one sequence. + + + + + Projects each element of a sequence to an , + and flattens the resulting sequences into one sequence. The + index of each source element is used in the projected form of + that element. + + + + + Projects each element of a sequence to an , + flattens the resulting sequences into one sequence, and invokes + a result selector function on each element therein. + + + + + Projects each element of a sequence to an , + flattens the resulting sequences into one sequence, and invokes + a result selector function on each element therein. The index of + each source element is used in the intermediate projected form + of that element. + + + + + Returns elements from a sequence as long as a specified condition is true. + + + + + Returns elements from a sequence as long as a specified condition is true. + The element's index is used in the logic of the predicate function. + + + + + Base implementation of First operator. + + + + + Returns the first element of a sequence. + + + + + Returns the first element in a sequence that satisfies a specified condition. + + + + + Returns the first element of a sequence, or a default value if + the sequence contains no elements. + + + + + Returns the first element of the sequence that satisfies a + condition or a default value if no such element is found. + + + + + Base implementation of Last operator. + + + + + Returns the last element of a sequence. + + + + + Returns the last element of a sequence that satisfies a + specified condition. + + + + + Returns the last element of a sequence, or a default value if + the sequence contains no elements. + + + + + Returns the last element of a sequence that satisfies a + condition or a default value if no such element is found. + + + + + Base implementation of Single operator. + + + + + Returns the only element of a sequence, and throws an exception + if there is not exactly one element in the sequence. + + + + + Returns the only element of a sequence that satisfies a + specified condition, and throws an exception if more than one + such element exists. + + + + + Returns the only element of a sequence, or a default value if + the sequence is empty; this method throws an exception if there + is more than one element in the sequence. + + + + + Returns the only element of a sequence that satisfies a + specified condition or a default value if no such element + exists; this method throws an exception if more than one element + satisfies the condition. + + + + + Returns the element at a specified index in a sequence. + + + + + Returns the element at a specified index in a sequence or a + default value if the index is out of range. + + + + + Inverts the order of the elements in a sequence. + + + + + Returns a specified number of contiguous elements from the start + of a sequence. + + + + + Bypasses a specified number of elements in a sequence and then + returns the remaining elements. + + + + + Bypasses elements in a sequence as long as a specified condition + is true and then returns the remaining elements. + + + + + Bypasses elements in a sequence as long as a specified condition + is true and then returns the remaining elements. The element's + index is used in the logic of the predicate function. + + + + + Returns the number of elements in a sequence. + + + + + Returns a number that represents how many elements in the + specified sequence satisfy a condition. + + + + + Returns a that represents the total number + of elements in a sequence. + + + + + Returns a that represents how many elements + in a sequence satisfy a condition. + + + + + Concatenates two sequences. + + + + + Creates a from an . + + + + + Creates an array from an . + + + + + Returns distinct elements from a sequence by using the default + equality comparer to compare values. + + + + + Returns distinct elements from a sequence by using a specified + to compare values. + + + + + Creates a from an + according to a specified key + selector function. + + + + + Creates a from an + according to a specified key + selector function and a key comparer. + + + + + Creates a from an + according to specified key + and element selector functions. + + + + + Creates a from an + according to a specified key + selector function, a comparer and an element selector function. + + + + + Groups the elements of a sequence according to a specified key + selector function. + + + + + Groups the elements of a sequence according to a specified key + selector function and compares the keys by using a specified + comparer. + + + + + Groups the elements of a sequence according to a specified key + selector function and projects the elements for each group by + using a specified function. + + + + + Groups the elements of a sequence according to a specified key + selector function and creates a result value from each group and + its key. + + + + + Groups the elements of a sequence according to a key selector + function. The keys are compared by using a comparer and each + group's elements are projected by using a specified function. + + + + + Groups the elements of a sequence according to a specified key + selector function and creates a result value from each group and + its key. The elements of each group are projected by using a + specified function. + + + + + Groups the elements of a sequence according to a specified key + selector function and creates a result value from each group and + its key. The keys are compared by using a specified comparer. + + + + + Groups the elements of a sequence according to a specified key + selector function and creates a result value from each group and + its key. Key values are compared by using a specified comparer, + and the elements of each group are projected by using a + specified function. + + + + + Applies an accumulator function over a sequence. + + + + + Applies an accumulator function over a sequence. The specified + seed value is used as the initial accumulator value. + + + + + Applies an accumulator function over a sequence. The specified + seed value is used as the initial accumulator value, and the + specified function is used to select the result value. + + + + + Produces the set union of two sequences by using the default + equality comparer. + + + + + Produces the set union of two sequences by using a specified + . + + + + + Returns the elements of the specified sequence or the type + parameter's default value in a singleton collection if the + sequence is empty. + + + + + Returns the elements of the specified sequence or the specified + value in a singleton collection if the sequence is empty. + + + + + Determines whether all elements of a sequence satisfy a condition. + + + + + Determines whether a sequence contains any elements. + + + + + Determines whether any element of a sequence satisfies a + condition. + + + + + Determines whether a sequence contains a specified element by + using the default equality comparer. + + + + + Determines whether a sequence contains a specified element by + using a specified . + + + + + Determines whether two sequences are equal by comparing the + elements by using the default equality comparer for their type. + + + + + Determines whether two sequences are equal by comparing their + elements by using a specified . + + + + + Base implementation for Min/Max operator. + + + + + Base implementation for Min/Max operator for nullable types. + + + + + Returns the minimum value in a generic sequence. + + + + + Invokes a transform function on each element of a generic + sequence and returns the minimum resulting value. + + + + + Returns the maximum value in a generic sequence. + + + + + Invokes a transform function on each element of a generic + sequence and returns the maximum resulting value. + + + + + Makes an enumerator seen as enumerable once more. + + + The supplied enumerator must have been started. The first element + returned is the element the enumerator was on when passed in. + DO NOT use this method if the caller must be a generator. It is + mostly safe among aggregate operations. + + + + + Sorts the elements of a sequence in ascending order according to a key. + + + + + Sorts the elements of a sequence in ascending order by using a + specified comparer. + + + + + Sorts the elements of a sequence in descending order according to a key. + + + + + Sorts the elements of a sequence in descending order by using a + specified comparer. + + + + + Performs a subsequent ordering of the elements in a sequence in + ascending order according to a key. + + + + + Performs a subsequent ordering of the elements in a sequence in + ascending order by using a specified comparer. + + + + + Performs a subsequent ordering of the elements in a sequence in + descending order, according to a key. + + + + + Performs a subsequent ordering of the elements in a sequence in + descending order by using a specified comparer. + + + + + Base implementation for Intersect and Except operators. + + + + + Produces the set intersection of two sequences by using the + default equality comparer to compare values. + + + + + Produces the set intersection of two sequences by using the + specified to compare values. + + + + + Produces the set difference of two sequences by using the + default equality comparer to compare values. + + + + + Produces the set difference of two sequences by using the + specified to compare values. + + + + + Creates a from an + according to a specified key + selector function. + + + + + Creates a from an + according to a specified key + selector function and key comparer. + + + + + Creates a from an + according to specified key + selector and element selector functions. + + + + + Creates a from an + according to a specified key + selector function, a comparer, and an element selector function. + + + + + Correlates the elements of two sequences based on matching keys. + The default equality comparer is used to compare keys. + + + + + Correlates the elements of two sequences based on matching keys. + The default equality comparer is used to compare keys. A + specified is used to compare keys. + + + + + Correlates the elements of two sequences based on equality of + keys and groups the results. The default equality comparer is + used to compare keys. + + + + + Correlates the elements of two sequences based on equality of + keys and groups the results. The default equality comparer is + used to compare keys. A specified + is used to compare keys. + + + + + Computes the sum of a sequence of values. + + + + + Computes the sum of a sequence of + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of values. + + + + + Computes the average of a sequence of values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Computes the sum of a sequence of nullable values. + + + + + Computes the sum of a sequence of nullable + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of nullable values. + + + + + Computes the average of a sequence of nullable values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Returns the minimum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the minimum nullable value. + + + + + Returns the maximum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the maximum nullable value. + + + + + Computes the sum of a sequence of values. + + + + + Computes the sum of a sequence of + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of values. + + + + + Computes the average of a sequence of values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Computes the sum of a sequence of nullable values. + + + + + Computes the sum of a sequence of nullable + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of nullable values. + + + + + Computes the average of a sequence of nullable values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Returns the minimum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the minimum nullable value. + + + + + Returns the maximum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the maximum nullable value. + + + + + Computes the sum of a sequence of nullable values. + + + + + Computes the sum of a sequence of + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of values. + + + + + Computes the average of a sequence of values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Computes the sum of a sequence of nullable values. + + + + + Computes the sum of a sequence of nullable + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of nullable values. + + + + + Computes the average of a sequence of nullable values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Returns the minimum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the minimum nullable value. + + + + + Returns the maximum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the maximum nullable value. + + + + + Computes the sum of a sequence of values. + + + + + Computes the sum of a sequence of + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of values. + + + + + Computes the average of a sequence of values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Computes the sum of a sequence of nullable values. + + + + + Computes the sum of a sequence of nullable + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of nullable values. + + + + + Computes the average of a sequence of nullable values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Returns the minimum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the minimum nullable value. + + + + + Returns the maximum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the maximum nullable value. + + + + + Computes the sum of a sequence of values. + + + + + Computes the sum of a sequence of + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of values. + + + + + Computes the average of a sequence of values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Computes the sum of a sequence of nullable values. + + + + + Computes the sum of a sequence of nullable + values that are obtained by invoking a transform function on + each element of the input sequence. + + + + + Computes the average of a sequence of nullable values. + + + + + Computes the average of a sequence of nullable values + that are obtained by invoking a transform function on each + element of the input sequence. + + + + + Returns the minimum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the minimum nullable value. + + + + + Returns the maximum value in a sequence of nullable + values. + + + + + Invokes a transform function on each element of a sequence and + returns the maximum nullable value. + + + + + Represents a collection of objects that have a common key. + + + + + Gets the key of the . + + + + + Defines an indexer, size property, and Boolean search method for + data structures that map keys to + sequences of values. + + + + + Represents a sorted sequence. + + + + + Performs a subsequent ordering on the elements of an + according to a key. + + + + + Represents a collection of keys each mapped to one or more values. + + + + + Gets the number of key/value collection pairs in the . + + + + + Gets the collection of values indexed by the specified key. + + + + + Determines whether a specified key is in the . + + + + + Applies a transform function to each key and its associated + values and returns the results. + + + + + Returns a generic enumerator that iterates through the . + + + + + See issue #11 + for why this method is needed and cannot be expressed as a + lambda at the call site. + + + + + See issue #11 + for why this method is needed and cannot be expressed as a + lambda at the call site. + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + + This attribute allows us to define extension methods without + requiring .NET Framework 3.5. For more information, see the section, + Extension Methods in .NET Framework 2.0 Apps, + of Basic Instincts: Extension Methods + column in MSDN Magazine, + issue Nov 2007. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net35/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/net35/Newtonsoft.Json.dll new file mode 100644 index 0000000..cf7b462 Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/net35/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net35/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/net35/Newtonsoft.Json.xml new file mode 100644 index 0000000..26949bf --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/net35/Newtonsoft.Json.xml @@ -0,0 +1,9096 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an Entity Framework to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Represents a JSON property. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. + When the or + + methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Represents a raw JSON string. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net40/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/net40/Newtonsoft.Json.dll new file mode 100644 index 0000000..3b6c69f Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/net40/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net40/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/net40/Newtonsoft.Json.xml new file mode 100644 index 0000000..cbd7075 --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/net40/Newtonsoft.Json.xml @@ -0,0 +1,9296 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an Entity Framework to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. + When the or + + methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Represents a raw JSON string. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net45/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/net45/Newtonsoft.Json.dll new file mode 100644 index 0000000..1971a35 Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/net45/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/net45/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/net45/Newtonsoft.Json.xml new file mode 100644 index 0000000..2ef7a77 --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/net45/Newtonsoft.Json.xml @@ -0,0 +1,10912 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an Entity Framework to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously skips the children of the current token. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously ets the state of the . + + The being written. + The value being written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. + When the or + + methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Represents a raw JSON string. + + + + + Asynchronously creates an instance of with the content of the reader's current token. + + The reader. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns an instance of with the content of the reader's current token. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Writes this token to a asynchronously. + + A into which this method will write. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.0/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.0/Newtonsoft.Json.dll new file mode 100644 index 0000000..04578eb Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.0/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.0/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.0/Newtonsoft.Json.xml new file mode 100644 index 0000000..482127f --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.0/Newtonsoft.Json.xml @@ -0,0 +1,10619 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously skips the children of the current token. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously ets the state of the . + + The being written. + The value being written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a raw JSON string. + + + + + Asynchronously creates an instance of with the content of the reader's current token. + + The reader. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns an instance of with the content of the reader's current token. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Writes this token to a asynchronously. + + A into which this method will write. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Allows users to control class loading and mandate what class to load. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Specifies what messages to output for the class. + + + + + Output no tracing and debugging messages. + + + + + Output error-handling messages. + + + + + Output warnings and error-handling messages. + + + + + Output informational messages, warnings, and error-handling messages. + + + + + Output all debugging and tracing messages. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + List of primitive types which can be widened. + + + + + Widening masks for primitive types above. + Index of the value in this array defines a type we're widening, + while the bits in mask define types it can be widened to (including itself). + + For example, value at index 0 defines a bool type, and it only has bit 0 set, + i.e. bool values can be assigned only to bool. + + + + + Checks if value of primitive type can be + assigned to parameter of primitive type . + + Source primitive type. + Target primitive type. + true if source type can be widened to target type, false otherwise. + + + + Checks if a set of values with given can be used + to invoke a method with specified . + + Method parameters. + Argument types. + Try to pack extra arguments into the last parameter when it is marked up with . + true if method can be called with given arguments, false otherwise. + + + + Compares two sets of parameters to determine + which one suits better for given argument types. + + + + + Returns a best method overload for given argument . + + List of method candidates. + Argument types. + Best method overload, or null if none matched. + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the method is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The is used to load the assembly. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.3/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.3/Newtonsoft.Json.dll new file mode 100644 index 0000000..04a52cb Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.3/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.3/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.3/Newtonsoft.Json.xml new file mode 100644 index 0000000..aa0ab33 --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/netstandard1.3/Newtonsoft.Json.xml @@ -0,0 +1,10722 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously skips the children of the current token. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously ets the state of the . + + The being written. + The value being written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a raw JSON string. + + + + + Asynchronously creates an instance of with the content of the reader's current token. + + The reader. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns an instance of with the content of the reader's current token. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Writes this token to a asynchronously. + + A into which this method will write. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Allows users to control class loading and mandate what class to load. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Specifies what messages to output for the class. + + + + + Output no tracing and debugging messages. + + + + + Output error-handling messages. + + + + + Output warnings and error-handling messages. + + + + + Output informational messages, warnings, and error-handling messages. + + + + + Output all debugging and tracing messages. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + List of primitive types which can be widened. + + + + + Widening masks for primitive types above. + Index of the value in this array defines a type we're widening, + while the bits in mask define types it can be widened to (including itself). + + For example, value at index 0 defines a bool type, and it only has bit 0 set, + i.e. bool values can be assigned only to bool. + + + + + Checks if value of primitive type can be + assigned to parameter of primitive type . + + Source primitive type. + Target primitive type. + true if source type can be widened to target type, false otherwise. + + + + Checks if a set of values with given can be used + to invoke a method with specified . + + Method parameters. + Argument types. + Try to pack extra arguments into the last parameter when it is marked up with . + true if method can be called with given arguments, false otherwise. + + + + Compares two sets of parameters to determine + which one suits better for given argument types. + + + + + Returns a best method overload for given argument . + + List of method candidates. + Argument types. + Best method overload, or null if none matched. + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the method is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The is used to load the assembly. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/netstandard2.0/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/netstandard2.0/Newtonsoft.Json.dll new file mode 100644 index 0000000..585c91d Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/netstandard2.0/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/netstandard2.0/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/netstandard2.0/Newtonsoft.Json.xml new file mode 100644 index 0000000..b1a5357 --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/netstandard2.0/Newtonsoft.Json.xml @@ -0,0 +1,10887 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an Entity Framework to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously skips the children of the current token. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously ets the state of the . + + The being written. + The value being written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. + When the or + + methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Represents a raw JSON string. + + + + + Asynchronously creates an instance of with the content of the reader's current token. + + The reader. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns an instance of with the content of the reader's current token. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Writes this token to a asynchronously. + + A into which this method will write. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/portable-net40%2Bsl5%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/portable-net40%2Bsl5%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.dll new file mode 100644 index 0000000..6afafb8 Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/portable-net40%2Bsl5%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/portable-net40%2Bsl5%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/portable-net40%2Bsl5%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.xml new file mode 100644 index 0000000..1d9143f --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/portable-net40%2Bsl5%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.xml @@ -0,0 +1,8707 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Represents a JSON property. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a raw JSON string. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Allows users to control class loading and mandate what class to load. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Specifies what messages to output for the class. + + + + + Output no tracing and debugging messages. + + + + + Output error-handling messages. + + + + + Output warnings and error-handling messages. + + + + + Output informational messages, warnings, and error-handling messages. + + + + + Output all debugging and tracing messages. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the method is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The is used to load the assembly. + + + + diff --git a/packages/Newtonsoft.Json.11.0.1/lib/portable-net45%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.dll b/packages/Newtonsoft.Json.11.0.1/lib/portable-net45%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.dll new file mode 100644 index 0000000..9c1207a Binary files /dev/null and b/packages/Newtonsoft.Json.11.0.1/lib/portable-net45%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.dll differ diff --git a/packages/Newtonsoft.Json.11.0.1/lib/portable-net45%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.xml b/packages/Newtonsoft.Json.11.0.1/lib/portable-net45%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.xml new file mode 100644 index 0000000..482127f --- /dev/null +++ b/packages/Newtonsoft.Json.11.0.1/lib/portable-net45%2Bwin8%2Bwp8%2Bwpa81/Newtonsoft.Json.xml @@ -0,0 +1,10619 @@ + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously skips the children of the current token. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously ets the state of the . + + The being written. + The value being written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a raw JSON string. + + + + + Asynchronously creates an instance of with the content of the reader's current token. + + The reader. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns an instance of with the content of the reader's current token. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Writes this token to a asynchronously. + + A into which this method will write. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Allows users to control class loading and mandate what class to load. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Specifies what messages to output for the class. + + + + + Output no tracing and debugging messages. + + + + + Output error-handling messages. + + + + + Output warnings and error-handling messages. + + + + + Output informational messages, warnings, and error-handling messages. + + + + + Output all debugging and tracing messages. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + List of primitive types which can be widened. + + + + + Widening masks for primitive types above. + Index of the value in this array defines a type we're widening, + while the bits in mask define types it can be widened to (including itself). + + For example, value at index 0 defines a bool type, and it only has bit 0 set, + i.e. bool values can be assigned only to bool. + + + + + Checks if value of primitive type can be + assigned to parameter of primitive type . + + Source primitive type. + Target primitive type. + true if source type can be widened to target type, false otherwise. + + + + Checks if a set of values with given can be used + to invoke a method with specified . + + Method parameters. + Argument types. + Try to pack extra arguments into the last parameter when it is marked up with . + true if method can be called with given arguments, false otherwise. + + + + Compares two sets of parameters to determine + which one suits better for given argument types. + + + + + Returns a best method overload for given argument . + + List of method candidates. + Argument types. + Best method overload, or null if none matched. + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the method is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The is used to load the assembly. + + + + diff --git a/packages/SimpleInjector.4.9.1/.signature.p7s b/packages/SimpleInjector.4.9.1/.signature.p7s new file mode 100644 index 0000000..85b1186 Binary files /dev/null and b/packages/SimpleInjector.4.9.1/.signature.p7s differ diff --git a/packages/SimpleInjector.4.9.1/SimpleInjector.4.9.1.nupkg b/packages/SimpleInjector.4.9.1/SimpleInjector.4.9.1.nupkg new file mode 100644 index 0000000..b8516dd Binary files /dev/null and b/packages/SimpleInjector.4.9.1/SimpleInjector.4.9.1.nupkg differ diff --git a/packages/SimpleInjector.4.9.1/lib/net40/SimpleInjector.dll b/packages/SimpleInjector.4.9.1/lib/net40/SimpleInjector.dll new file mode 100644 index 0000000..27bca8c Binary files /dev/null and b/packages/SimpleInjector.4.9.1/lib/net40/SimpleInjector.dll differ diff --git a/packages/SimpleInjector.4.9.1/lib/net40/SimpleInjector.xml b/packages/SimpleInjector.4.9.1/lib/net40/SimpleInjector.xml new file mode 100644 index 0000000..ca857ea --- /dev/null +++ b/packages/SimpleInjector.4.9.1/lib/net40/SimpleInjector.xml @@ -0,0 +1,6182 @@ + + + + SimpleInjector + + + + + The standard exception thrown when a container has an error in resolving an object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + + Extension methods for enable advanced scenarios. + + + + + Determines whether the specified container is locked making any new registrations. The container + is automatically locked when GetInstance is called for the + first time. + + The container. + + true if the specified container is locked; otherwise, false. + + Thrown when is null. + + + Determines whether the specified container is currently verifying its configuration. + The container. + true if the specified container is verifying; otherwise, false. + Thrown when is null. + + + + Retrieves an item from the container stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The container. + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Stores an item by the given in the container. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The container. + The key of the item to insert or override. + The actual item. May be null. + Thrown when either or + is a null reference (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The container. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either , + or is a null reference (Nothing in VB). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Common base class for Simple Injector API classes. + + + + + + + + + + + + + Gets the of the current instance. + The instance that represents the exact runtime + type of the current instance. + + + Deprecation extensions. + + + + This interface method has been removed. Please call GetInstanceProducerFor instead. + + The behavior. + The consumer. + Throws an exception. + + + + This interface method has been removed. Please call SelectProperty(PropertyInfo) instead. + + The behavior. + Type of the abstraction that is requested. + The property to check. + True when the property should be injected. + + + + Defines the container's behavior for finding a suitable constructor for the creation of a type. + Set the ConstructorResolutionBehavior + property of the container's property to change the default behavior + of the container. + + + + + Gets the given 's constructor that can be used by the + container to create that instance. + + Type of the implementation to find a suitable constructor for. + + The . This method never returns null. + + Thrown when no suitable constructor could be found. + + + + Defines the container's behavior for building an expression tree for an dependency to inject, based on + the information of the consuming type the dependency is injected into. + Set the ConstructorInjectionBehavior + property of the container's property to change the default behavior + of the container. + + + + Verifies the specified . + Contextual information about the consumer where the built dependency is + injected into. + + Thrown when the type of the target supplied with + the supplied cannot be used for auto wiring. + Thrown when the supplied argument is a null reference. + + + + Gets the for the + Target of the supplied . + + Contextual information about the consumer where the built dependency is + injected into. + The indication whether the method should return null or throw + an exception when the type is not registered. + An that describes the intend of creating that + Target. This method never returns null. + Thrown when the argument is a null reference. + + + + Defines the container's behavior for selecting the lifestyle for a registration in case no lifestyle + is explicitly supplied. + Set the LifestyleSelectionBehavior + property of the container's property to change the default behavior + of the container. By default, when no lifestyle is explicitly supplied, the + Transient lifestyle is used. + + + + Selects the lifestyle based on the supplied type information. + Type of the implementation to that is registered. + The suited for the given type. + Thrown when either one of the arguments is a null reference. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterResolveInterceptor + method that takes this delegate. This type contains contextual information about a resolved type and it + allows the user to examine the given instance to decide whether the + should be applied or not. + + + + + Gets the that is responsible for the initialization of the created + instance. + + The or null (Nothing in VB) when the instance producer is + unknown. + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterInitializer + overload that takes this delegate. This type contains contextual information about the creation and it + allows the user to examine the given instance to decide whether the instance should be initialized or + not. + + + + + Gets a null reference. This property has been deprecated. + + The null (Nothing in VB). + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + Contains data that can be used to initialize a created instance. This data includes the actual + created and the information about the created instance. + + + + Initializes a new instance of the struct. + The that contains contextual information + about the created instance. + The created instance. + + + Gets the with contextual information about the + created instance. + The . + + + Gets the created instance. + The created instance. + + + + + + + + + + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + True if a and b are equal; otherwise, false. + + + + Indicates whether the values of two specified objects are + not equal. + + The first object to compare. + The second object to compare. + True if a and b are not equal; otherwise, false. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + + + Initializes a new instance of the struct. + The scope factory. + The container. + + + Gets the lazily initialized Scope of the current LazyScope instance. + The current Scope or null. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + Implementation type. + + + + Initializes a new instance of the + struct. + The registration. + + + + Gets the lazily initialized instance for the of the current LazyScopedRegistration. + + The scope that is used to retrieve the instance. + The cached instance. + + + + Defines the container's behavior for selecting properties to inject during the creation of a type. + Set the PropertySelectionBehavior + property of the container's property to change the default behavior + of the container. By default, no properties will be injected by the container. + + + + + Determines whether a property should be injected by the container upon creation of its type. + + + The type being created for which the property should be injected. Note that this might a + different type than the type on which the property is declared (which might be a base class). + The property to check. + True when the property should be injected. + + + + A known relationship defines a relationship between two types. The Diagnostics Debug View uses this + information to spot possible misconfigurations. + + + + Initializes a new instance of the class. + The implementation type of the parent type. + The lifestyle of the parent type. + The type that the parent depends on (it is injected into the parent). + + + Gets the implementation type of the parent type of the relationship. + The implementation type of the parent type of the relationship. + + + Gets the lifestyle of the parent type of the relationship. + The lifestyle of the parent type of the relationship. + + + Gets the type that the parent depends on (it is injected into the parent). + The type that the parent depends on. + + + + + + + + + + + + + The container. Create an instance of this type for registration of dependencies. + + + + Thread-safety: + Resolving instances can be done safely from multiple threads concurrently, but registration needs to + be done from one single thread. + + + It is therefore safe to call , , + GetService, and + and anything related to resolving instances from multiple thread + concurrently. It is however unsafe to call + RegisterXXX, + , , , + or anything related to registering from multiple threads concurrently. + + + Common Container methods specific for the full .NET version of Simple Injector. + Methods for batch registration. + Methods for registration of collections. + Methods for conditional registrations. + + These conditional registration methods lack a Func{PredicateContext, TService} predicate + method. This is deliberate, because would force the factory to be registered as transient, forcing + the whole parent structure to become transient as well. Besides this, it would blind the diagnostic + system, because it will stop at the delegate, instead of being able to analyze the object graph as + a whole. + + Methods for registration. + Methods for registration of decorators. + Methods for resolving instances. + Methods for verifying the container. + + + Initializes a new instance of the class. + + + Gets the container options. + The instance for this container. + + + Gets the container scope that that manages the lifetime of singletons and other + container-controlled instances. Use this property to register actions that need to be called + and instances that need to be disposed when the container gets disposed. + The instance for this container. + + + + Gets a value indicating whether the container is currently being verified on the current thread. + + True in case the container is currently being verified on the current thread; otherwise + false. + + + + Gets the intermediate lifestyle that forwards CreateRegistration calls to the lifestyle that is + returned from the registered container.Options.LifestyleSelectionBehavior. + + + + + Returns an array with the current registrations. This list contains all explicitly registered + types, and all implicitly registered instances. Implicit registrations are all concrete + unregistered types that have been requested, all types that have been resolved using + unregistered type resolution (using the event), and + requested unregistered collections. Note that the result of this method may change over time, + because of these implicit registrations. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + + + + Returns an array with the current registrations for root objects. Root objects are registrations + that are in the root of the object graph, meaning that no other registration is depending on it. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + This list contains the root objects of all explicitly registered types, and all implicitly + registered instances. Implicit registrations are all concrete unregistered types that have been + requested, all types that have been resolved using unregistered type resolution (using the + event), and requested unregistered collections. Note that + the result of this method may change over time, because of these implicit registrations. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + Thrown when this method is called before + has been successfully called. + + + Releases all instances that are cached by the object. + + + Prevents any new registrations to be made to the container. + + + Releases all instances that are cached by the object. + True for a normal dispose operation; false to finalize the handle. + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + An assembly that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the transient lifestyle. + + The definition of the open generic type. + A list types to be registered. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the given . + + The definition of the open generic type. + A list types to be registered. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + assemblies = new[] { typeof(ILogger).Assembly }; + var types = container.GetTypesToRegister(assemblies) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ( + typeof(ILogger).Assembly, + typeof(FileLogger).Assembly) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Container.Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete types that are located in the supplied + and implement or inherit from the supplied and match the specified + . can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var options = new TypesToRegisterOptions { IncludeGenericTypeDefinitions: true }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies, options) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + The options. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Registers a dynamic (container-uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + + The container-uncontrolled collection to register. + + + Thrown when this container instance is locked and can not be altered, or when a + for has already + been registered. + + + Thrown when is a null reference. + + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when and + are not a generic type or when + is a partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of the type returned from + will be returned every time a + is requested and where the supplied + returns true. The instance is cached according to the supplied + . Both the and + will only be evaluated a finite number of times; + they unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + A factory that allows building Type objects that define the + implementation type to inject, based on the given contextual information. The delegate is allowed + to return (partially) open-generic types. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the registration can be applied for + the requested service type. This predicate can be used to build a fallback mechanism where + multiple registrations for the same service type are made. + Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is a + partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + is requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is open generic or + is not assignable to . + + Thrown when this container instance is locked and can not be altered. + + + + + Occurs when an instance of a type is requested that has not been registered explicitly, allowing + resolution of unregistered types before the container tries to create the type. + + + + The event is called by the container every time an + unregistered type is requested for the first time, allowing a developer to do unregistered type + resolution. By calling the + Register method on the + , a , or + delegate can be registered allowing the container to retrieve + instances of the requested type. This registration is cached and it prevents the + ResolveUnregisteredType event from being called again for the same type. + + + When no registered event handled the registration of an unregistered type, the container will try + to create the type when this type is either concrete or is the + interface. Concrete types will be registered with the Transient + lifestyle and registrations will return an empty collection. When no + even handled the registration and the container could not create it, an exception is thrown. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once. While the calls to for a given type + are finite (and will in most cases happen just once), a container can call the delegate multiple + times and make parallel calls to the delegate. You must make sure that the code can be called + multiple times and is thread-safe. + + + + The following example shows the usage of the event: + + { + void Validate(T instance); + } + + // Implementation of the null object pattern. + public class EmptyValidator : IValidator + { + public void Validate(T instance) + { + // Does nothing. + } + } + + [TestMethod] + public void TestResolveUnregisteredType() + { + // Arrange + var container = new Container(); + + // Register an EmptyValidator to be returned when a IValidator is requested: + container.ResolveUnregisteredType += (sender, e) => + { + if (e.UnregisteredServiceType.IsGenericType && + e.UnregisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var validatorType = typeof(EmptyValidator<>).MakeGenericType( + e.UnregisteredServiceType.GetGenericArguments()); + + // Register the instance as singleton. + e.Register(Lifestyle.Singleton.CreateRegistration(validatorType, container)); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(EmptyValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(EmptyValidator)); + } + ]]> + + The example above registers a delegate that is raised every time an unregistered type is requested + from the container. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will request the container for a concrete EmptyValidator<T> implementation that + implements the given + UnregisteredServiceType, and + registers a delegate that will return this created instance. The e.Register call + registers the method in the container, preventing the from + being called again for the exact same service type, preventing any performance penalties. + + + Please note that given example is just an uhhmm... example. In the case of the example the + EmptyValidator<T> can be better registered using of the built-in + Register methods instead. These methods take + care of any given generic type constraint and allow the implementation to be integrated into the + container's pipeline, which allows it to be intercepted using the + event and allow any registered initializers to be + applied. + + + + + + Occurs after the creation of the of a registered type is complete (the + lifestyle has been applied), allowing the created to be wrapped, + changed, or replaced. Multiple delegates may handle the same service type. + + + + The ExpressionBuilt event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilt event, can change the + property on the + , which allows changing the way the type is constructed. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to for a + given type are finite (and will in most cases happen just once), a container can call the delegate + multiple times and make parallel calls to the delegate. You must make sure that the code can be + called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilt event: + + { + void Validate(T instance); + } + + public interface ILogger + { + void Write(string message); + } + + // Implementation of the decorator pattern. + public class MonitoringValidator : IValidator + { + private readonly IValidator validator; + private readonly ILogger logger; + + public MonitoringValidator(IValidator validator, ILogger logger) + { + this.validator = validator; + this.logger = logger; + } + + public void Validate(T instance) + { + this.logger.Write("Validating " + typeof(T).Name); + this.validator.Validate(instance); + this.logger.Write("Validated " + typeof(T).Name); + } + } + + [TestMethod] + public void TestExpressionBuilt() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + container.Register, OrderValidator>(); + container.Register, CustomerValidator>(); + + // Intercept the creation of IValidator instances and wrap them in a MonitoringValidator: + container.ExpressionBuilt += (sender, e) => + { + if (e.RegisteredServiceType.IsGenericType && + e.RegisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var decoratorType = typeof(MonitoringValidator<>) + .MakeGenericType(e.RegisteredServiceType.GetGenericArguments()); + + // Wrap the IValidator in a MonitoringValidator. + e.Expression = Expression.New(decoratorType.GetConstructors()[0], new Expression[] + { + e.Expression, + container.GetRegistration(typeof(ILogger)).BuildExpression(), + }); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(MonitoringValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(MonitoringValidator)); + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will changes the current with a new one that creates + a new MonitoringValidator<T> that takes the current validator (and an ILogger) + as an dependency. + + + Please note that given example is just an uhhmm... example. In the case of the example the + MonitoringValidator<T> is a decorator and instead of manually writing this code that + many limitations, you can use one of the built-in + RegisterDecorator methods instead. + These extension methods take care of any given generic type constraint, allow to register decorators + conditionally and allow the decorator to be integrated into the container's pipeline, which allows + it to be intercepted using the event and allow any registered + initializers to be applied. + + + + + + Occurs directly after the creation of the of a registered type is made, + but before any initializer and lifestyle specific caching + has been applied, allowing the created to be altered. Multiple delegates + may handle the same service type. + + + + The ExpressionBuilding event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilding event, can change the + property on the + , which allows changing the way the type is constructed. + + + The exact type supplied depends on the type of registration. + Registrations that explicitly supply the implementation type (such as + Register<TService, TImplementation>()) + will result in an , while registrations that take a delegate (such as + Register<TService>(Func<TService>)) + will result in an . Singletons that are passed in using their + value (RegisterInstance<TService>(TService)) + will result in an . Note that other ExpressionBuilding + registrations might have changed the + property and might have supplied an of a different type. The order in + which these events are registered might be of importance to you. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to registered ExpressionBuilding + events for a given type are finite (and will in most cases happen just once), a container can + call the delegate multiple times and make parallel calls to the delegate. You must make sure that + the code can be called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilding event: + + { + var expression = e.Expression as NewExpression; + + if (expression != null) + { + var propertiesToInject = + from property in expression.Constructor.DeclaringType.GetProperties() + where property.GetCustomAttributes(typeof(MyInjectPropertyAttribute), true).Any() + let registration = container.GetRegistration(property.PropertyType, true) + select Tuple.Create(property, registration); + + if (propertiesToInject.Any()) + { + Func[], object> injectorDelegate = + (instance, dependencies) => + { + foreach (var dependency in dependencies) + { + dependency.Item1.SetValue(instance, dependency.Item2.GetInstance(), null); + } + + return instance; + }; + + e.Expression = Expression.Convert( + Expression.Invoke( + Expression.Constant(injectorDelegate), + e.Expression, + Expression.Constant(propertiesToInject.ToArray())), + expression.Constructor.DeclaringType); + } + } + }; + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks if the type contains properties that are + decorated with the supplied MyInjectPropertyAttribute. If decorated properties are found, + the given expression is replaced with an expression that injects decorated properties. + + + + + Gets the object that allows access to methods related to registration and creation of collections. + The instance for this container. + + + This property is obsolete. Please use instead. + The instance for this container. + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that an instance of will be returned when it + is requested. The instance is cached according to the supplied . + + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a new instance of will be returned every time a + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers that an instance of will be returned when an + instance of type is requested. The instance is cached according to + the supplied . + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning transient instances of + . The delegate is expected to always return a new instance on + each call. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. This can be an open-generic type. + Thrown when is a null + references (Nothing in VB). + Thrown when represents + a type that can not be created by the container. + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that a new instance of will be returned every time a + is requested. If and + represent the same type, the type is registered by itself. + Open and closed generic types are supported. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when or + are null references (Nothing in VB). + Thrown when is + no sub type from (or the same type). + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that an instance of type will be returned when an + instance of type is requested. The instance is cached according to + the supplied . Open and closed generic types are supported. + + The interface or base type that can be used to retrieve the instances. + This can be an open-generic type. + The concrete type that will be registered. + This can be an open-generic type. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container, when either + or are open generic types, or when + is not assignable from the . + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Registers the specified delegate that allows returning instances of . + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. + The delegate that will be used for creating new instances. + Thrown when either or + are null references (Nothing in VB). + Thrown when represents an + open generic type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use the overload that accepts a delegate. + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton(Type, Func<object>). + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single concrete instance that will be constructed using constructor injection and will + be returned when this instance is requested by type . + This must be thread-safe when working in a multi-threaded + environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when + has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that the same a single instance of type will be + returned every time an type is requested. If + and represent the same + type, the type is registered by itself. must be thread-safe + when working in a multi-threaded environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + + The interface or base type that can be used to retrieve the instances. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows constructing a single instance of + . This delegate will be called at most once during the lifetime of + the application. The returned instance must be thread-safe when working in a multi-threaded + environment. + If the instance returned from implements , + the created instance will get disposed when Container.Dispose + gets called. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating this single + instance. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a + null reference. + + + + Registers that the same instance of type will be returned every + time an instance of type type is requested. If + and represent the same type, the + type is registered by itself. must be thread-safe when working + in a multi-threaded environment. Open and closed generic types are supported. + + The base type or interface to register. + This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from , or when one of them represents an open generic + type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that allows constructing a single + instance. The container will call this delegate at most once during the lifetime of the application. + + The base type or interface to register. + The delegate that will be used for creating that single instance. + Thrown when represents an open + generic type. + Thrown when either or + are null references (Nothing in + VB). + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers an delegate that runs after the creation of instances that + implement or derive from the given . Please note that only instances + that are created by the container (using constructor injection) can be initialized this way. + + The type for which the initializer will be registered. + The delegate that will be called after the instance has been + constructed and before it is returned. + + Thrown when the is a null reference. + + + Thrown when this container instance is locked and can not be altered. + + + Multiple delegates can be registered per + and multiple initializers can be applied on a created instance, + before it is returned. For instance, when registering a + for type , the delegate will be called for every instance created by + the container, which can be nice for debugging purposes. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + The following example shows the usage of the + RegisterInitializer method: + + (); + + // Configuring property injection for types that implement ICommand: + container.RegisterInitializer(command => + { + command.SendAsync = true; + }); + + // Configuring property injection for types that implement CommandBase: + container.RegisterInitializer(command => + { + command.Clock = container.GetInstance(); + }); + + // Act + var command = (ConcreteCommand)container.GetInstance(); + + // Assert + // Because ConcreteCommand implements both ICommand and CommandBase, + // both the initializers will have been executed. + Assert.IsTrue(command.SendAsync); + Assert.IsNotNull(command.Clock); + } + ]]> + + The container does not use the type information of the requested service type, but it uses the + type information of the actual implementation to find all initialized that apply for that + type. This makes it possible to have multiple initializers to be applied on a single returned + instance while keeping performance high. + + + Registered initializers will only be applied to instances that are created by the container self + (using constructor injection). Types that are newed up manually by supplying a + delegate to the container (using the + method) or registered as single instance + (using ) will not trigger initialization. + When initialization of these instances is needed, this must be done manually, as can be seen in + the following example: + commandInitializer = command => + { + initializerCallCount++; + }); + + // Configuring that initializer. + container.RegisterInitializer(commandInitializer); + + container.Register(() => + { + // Create a ConcreteCommand manually: will not be initialized. + var command = new ConcreteCommand("Data Source=.;Initial Catalog=db;"); + + // Run the initializer manually. + commandInitializer(command); + + return command; + }); + + // Act + var command = container.GetInstance(); + + // Assert + // The initializer will only be called once. + Assert.AreEqual(1, initializerCallCount); + } + ]]> + The previous example shows how a manually created instance can still be initialized. Try to + prevent creating types manually, by changing the design of those classes. If possible, create a + single public constructor that only contains dependencies that can be resolved. + + + + + + Registers an delegate that runs after the + creation of instances for which the supplied returns true. Please + note that only instances that are created by the container can be initialized this way. + + The delegate that will be called after the instance has been + constructed and before it is returned. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + Note: The is not guaranteed to be called once per registration; + when a registration's instance is requested for the first time simultaneously over multiple thread, + the predicate might be called multiple times. The caller of this method is responsible of supplying + a predicate that is thread-safe. + + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is ambiguous, + when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Act + IFoo foo = container.GetInstance(); + IBar bar = container.GetInstance(); + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + + In the example above a singleton registration is created for type FooBar and this + registration is added to the container for each interface (IFoo and IBar) that it + implements. Since both services use the same singleton registration, requesting those services + will result in the return of the same (singleton) instance. + + + events are applied to the of the + instance and are therefore applied once. + events on the other hand get applied to the Expression of the . + Since each AddRegistration gets its own instance producer (that wraps the + Registration instance), this means that the ExpressionBuilt events will be + applied for each registered service type. + + + The most practical example of this is the use of decorators using one of the + RegisterDecorator overloads (decorator registration + use the ExpressionBuilt event under the covers). Take a look at the following example: + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Registere a decorator for IBar, but not for IFoo + container.RegisterDecorator(typeof(IBar), typeof(BarDecorator)); + + // Act + var foo = container.GetInstance(); + var decorator = container.GetInstance() as BarDecorator; + var bar = decorator.DecoratedBar; + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + The example shows that the decorator gets applied to IBar but not to IFoo, but that + the decorated IBar is still the same instance as the resolved IFoo instance. + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is not a reference + type, is open generic, is ambiguous, when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . By default, a new + instance will be returned on each request (according the + Transient lifestyle), independently of the lifestyle of the + wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + + Thrown when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type or + where T is . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . Decorators can be applied to both open, closed, and + non-generic service types. By default, a new instance will be + returned on each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + The following example shows the definition of a generic ICommandHandler<T> interface, + a CustomerMovedCommandHandler implementing that interface, and a + ValidatorCommandHandlerDecorator<T> that acts as a decorator for that interface. + + { + void Handle(TCommand command); + } + + public class CustomerMovedCommand + { + [Required] + public int CustomerId { get; set; } + + [Required] + public Address Address { get; set; } + } + + public class CustomerMovedCommandHandler + : ICommandHandler + { + public void Handle(CustomerMovedCommand command) + { + // some logic + } + } + + // Decorator that validates commands before they get executed. + public class ValidatorCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly Container container; + + public ValidatorCommandHandlerDecorator( + ICommandHandler decoratedHandler, + Container container) + { + this.decoratedHandler = decoratedHandler; + this.container = container; + } + + public void Handle(TCommand command) + { + this.Validate(command); + + this.decoratedHandler.Handle(command); + } + + private void Validate(TCommand command) + { + var validationContext = + new ValidationContext(command, this.container, null); + + Validator.ValidateObject(command, validationContext); + } + } + + // Decorator that measures the time it takes to execute a command. + public class MonitoringCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly ILogger logger; + + public MonitoringCommandHandlerDecorator( + ICommandHandler decoratedHandler, + ILogger logger) + { + this.decoratedHandler = decoratedHandler; + this.logger = logger; + } + + public void Handle(TCommand command) + { + var watch = Stopwatch.StartNew(); + + this.decoratedHandler.Handle(command); + + this.logger.Log(string.Format("{0} executed in {1} ms.", + command.GetType().Name, watch.ElapsedMilliseconds)); + } + } + + [TestMethod] + public static void TestRegisterOpenGenericDecorator() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + + // Search the given assembly and register all concrete types that + // implement ICommandHandler. + container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), + typeof(ICommandHandler<>).Assembly); + + // Wrap all ICommandHandler service types with a decorator + // that measures and logs the duration of that handler. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(MonitoringCommandHandlerDecorator<>)); + + // Wrap all ICommandHandler types (in this case it will + // wrap the monitoring decorator), but only if the TCommand contains + // any properties. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(ValidatorCommandHandlerDecorator<>), context => + { + var commandType = context.ServiceType.GetGenericArguments()[0]; + bool mustDecorate = commandType.GetProperties().Any(); + return mustDecorate; + }); + + // Act + var handler = + container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(handler, + typeof(ValidatorCommandHandlerDecorator)); + } + ]]> + + The (possibly open generic) service type that will be wrapped by the + given . + The (possibly the open generic) decorator type that will + be used to wrap the original service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or implement + , when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned when the supplied + returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the decorator type that is returned from is + supplied when the supplied returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the decorator type that is returned by the + supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The types returned from the may be non-generic, + closed-generic, open-generic and even partially-closed generic. The container will try to fill in + the generic parameters based on the resolved service type. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The type returned from may have a constructor with an + argument of type where T is . In this + case, the library will not inject the decorated itself into the + decorator instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + The following is an example of the registration of a decorator through the factory delegate: + , MoveCustomerCommandHandler>(); + + container.RegisterDecorator( + typeof(ICommandHandler<>), + context => typeof(LoggingCommandHandler<,>).MakeGenericType( + typeof(LoggingCommandHandler<,>).GetGenericArguments().First(), + context.ImplementationType), + Lifestyle.Transient, + context => true); + + var handler = container.GetInstance>(); + + Assert.IsInstanceOfType(handler, + typeof(LoggingCommandHandler)); + + ]]> + The code above allows a generic LoggingCommandHandler<TCommand, TImplementation> to + be applied to command handlers, where the second generic argument will be filled in using the + contextual information. + + The definition of the (possibly open generic) service type that will + be wrapped by the decorator type that is returned from . + A factory that allows building Type objects that define the + decorators to inject, based on the given contextual information. The delegate is allowed to return + (partially) open-generic types. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the decorator must be applied to a + service type. + Thrown when one of the arguments is a null reference. + + + + Ensures that the supplied decorator is returned when the supplied + returns true, wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. By default, a new instance will be returned on + each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when does not inherit + from or implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested TService. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested serviceType. + Thrown when there are errors resolving the service instance. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType. -or- null if there is no service object of type + . + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + An or null (Nothing in VB). + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned, or an exception is throw when + is set to true. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + The indication whether the method should return null or throw + an exception when the type is not registered. + An or null (Nothing in VB). + + + + Verifies and diagnoses this Container instance. This method will call all registered + delegates, iterate registered collections and throws an exception if there was an error. + + Thrown when the registration of instances was + invalid. + + + + Verifies the Container. This method will call all registered delegates, + iterate registered collections and throws an exception if there was an error. + + Specifies how the container should verify its configuration. + Thrown when the registration of instances was + invalid. + Thrown in case there are diagnostic errors and + the option is supplied. + Thrown when has an invalid value. + + + + Contains methods for registering and creating collections in the . + + + + + Gets the for this instance. + + The for this instance. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new to a collection of registrations for the given + . Calls to Append can both preceed and follow a call to one + of the Container.Collections.Register + overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + Thrown when the is ambiguous. + + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + The lifestyle that specifies how the returned instance will be cached. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends the specified delegate to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The element type of the collections to register. + The instance to register. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + TThe element type of the collections to register. + The instance to register. + Thrown when the is ambiguous, or + does not implement . + + Thrown when either or + are null references. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + The container-uncontrolled collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Provides data for and interaction with the + ContainerLocking event of + the . + + + + + Delegate that allows intercepting calls to and + . + + Contextual information about the to be created object. + A delegate that produces the actual instance according to its + lifestyle settings. + The instance that is returned from or an intercepted instance. + + + Configuration options for the Container. + + The following example shows the typical usage of the ContainerOptions class. + (); + + // Use of ContainerOptions class here. + container.Options.AllowOverridingRegistrations = true; + + // Replaces the previous registration of ITimeProvider + container.Register(); + ]]> + + + + + Occurs just before the container is about to be locked, giving the developer a last change to + interact and change the unlocked container before it is sealed for further modifications. Locking + typically occurs by a call to Container.GetInstance, Container.Verify, or any other + method that causes the construction and resolution of registered instances. + + + + The ContainerLocking event is called exactly once by the container, allowing a developer to + register types, hook unregistered type resolution events that need to be applied last, or see + who is responsible for locking the container. + + + A registered event handler delegate is allowed to make a call that locks the container, e.g. + calling Container.GetInstance; this will not cause any new ContainerLocking event to + be raised. Doing so, however, is not advised, as that might cause any following executed handlers + to break, in case they require an unlocked container. + + + + + + Gets the container to which this ContainerOptions instance belongs to. + + The current Container. + + + + Gets or sets a value indicating whether the container allows overriding registrations. The default + is false. + + The value indicating whether the container allows overriding registrations. + + + + Gets or sets a value indicating whether the container should suppress checking for lifestyle + mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default + is false. This setting will have no effect when is true. + + The value indicating whether the container should suppress checking for lifestyle + mismatches. + + + + + Gets or sets a value indicating whether the container should use a loosened (i.e. less strict) + behavior for detecting lifestyle mismatches (see: https://simpleinjector.org/dialm). In short, + when is set to true + dependencies are allowed to be injected into + components. When disabled, a warning would be given in that case. + + + Simple Injector allows custom lifestyles to be created and this loosened behavior works on custom + lifestyles as well. The loosened behavior will ignore any lifestyle mismatch checks on any + component with a lifestyle that has a that is equal or shorter than + the length of . + + + + + + Gets or sets a value indicating whether the container should automatically trigger verification + and diagnostics of its configuration when the first service is resolved (e.g. the first call to + GetInstance). The behavior is identical to calling Verify() + manually. The default is false. + + The value indicating whether the container should automatically trigger verification. + + + Gets or sets a value indicating whether. + This method is deprecated. Changing its value will have no effect. + The value indicating whether the container will return an empty collection. + + + + Gets or sets a value indicating whether all the containers in the current AppDomain should throw + exceptions that contain fully qualified type name. The default is false which means + the type's namespace is omitted. + + The value indicating whether exception message should emit full type names. + + + + Gets or sets a value indicating whether the container should resolve unregistered concrete types. + The default value is true. Consider changing the value to false to prevent + accidental creation of types you haven't registered explicitly. + + The value indicating whether the container should resolve unregistered concrete types. + + Thrown when this container instance is locked and can not be altered. + + + + + Gets or sets the constructor resolution behavior. By default, the container only supports types + that have a single public constructor. + + The constructor resolution behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + Gets or sets the dependency injection behavior. + The constructor injection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the property selection behavior. The container's default behavior is to do no + property injection. + + The property selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the lifestyle selection behavior. The container's default behavior is to make + registrations using the lifestyle. + The lifestyle selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default lifestyle that the container will use when a registration is + made when no lifestyle is supplied. + The default lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default scoped lifestyle that the container should use when a registration is + made using Lifestyle.Scoped. + The default scoped lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. + By default, this value is true for the first few containers that are created in an AppDomain + and false for all other containers. You can set this value explicitly to false + to prevent the use of dynamic assemblies or you can set this value explicitly to true to + force more container instances to use dynamic assemblies. Note that creating an infinite number + of Container instances (for instance one per web request) + with this property set to true will result in a memory leak; dynamic assemblies take up + memory and will only be unloaded when the AppDomain is unloaded. + + A boolean indicating whether the container should use a dynamic assembly for compilation. + + + + + Registers an delegate that allows intercepting calls to + GetInstance and + . + + + If multiple registered instances must be applied, they will be + applied/wrapped in the order of registration, i.e. the first registered interceptor will call the + original instance producer delegate, the second interceptor will call the first interceptor, etc. + The last registered interceptor will become the outermost method in the chain and will be called + first. + + The delegate to register. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + The following example shows the usage of the method: + + { + object instance = producer.Invoke(); + Console.WriteLine(instance.GetType().Name + " resolved for " + context.Producer.ServiceType.Name); + return instance; + }, + context => context.Producer.ServiceType.Name.EndsWith("Controller")); + + container.Register(); + container.Register(); + + // This line will write "HomeViewModel resolved for IHomeViewModel" to the console. + container.GetInstance(); + ]]> + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The scope that manages the lifetime of singletons and other container-controlled instances. + + + + + Allows registering an delegate that will be called when the container + gets disposed, but before the container disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to + Dispose, the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Adds the to the list of items that will get disposed when the + container gets disposed. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. Instead, + provides an atomic operation for getting and setting an item. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either of the arguments is a null reference (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances + are returned in order of creation/registration. When + Container.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be + disposed in opposite order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + + An instance of this type can be injected into constructors of decorator classes that are registered + using RegisterDecorator. This type contains + contextual information about the applied decoration and it allows users to examine the given instance + to make runtime decisions. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterDecorator + overload that takes this delegate. This type contains information about the decoration that is about + to be applied and it allows users to examine the given instance to see whether the decorator should + be applied or not. + + + Please see the + RegisterDecorator + method for more information. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + Hooks into the building process and adds a decorator if needed. + + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diaal. + + + + Gets the lifestyles that causes the registrations to be conflicting. + instances. + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the registration that caused this warning. + An . + + + + Gets the list of registrations that are in conflict with the . + + A list of instances. + + + + Entry point for doing diagnostic analysis on instances. + + + The following example shows the usage of the Analyzer class: + + + + + + Analyzes the supplied instance. + + The container instance to analyze. + A collection of sub types that describe the diagnostic + warnings and messages. + + + + Diagnostic result for a warning about a concrete type that was not registered explicitly and was not + resolved using unregistered type resolution, but was created by the container using the transient + lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + Gets a collection of instances that describe all + container-registered dependencies for the given component. + List of objects. + + + + A hierarchical group of . + + + + + Gets the base that describes the service types of its + . The value often be either (in case this is a + root group) or a partial generic type to allow hierarchical grouping of a large number of related + generic types. + + The . + + + Gets the friendly name of the group. + The name. + + + Gets the description of the group. + The description. + + + Gets the diagnostic type of all grouped instances. + The . + + + Gets the parent or null (Nothing in VB) when this is the + root group. + The . + + + Gets the collection of child s. + A collection of elements. + + + Gets the collection of instances. + /// A collection of elements. + + + + Base class for types that hold information about a single diagnostic message or warning for a + particular type or part of the configuration. + + + + Gets the severity of this result. + The . + + + Gets the diagnostic type of this result. + The . + + + Gets the service type to which this warning is related. + A . + + + Gets the description of the diagnostic result. + A with the description. + + + Gets the documentation URL of the diagnostic result. + A with the URL. + + + Gets the hierarchical group to which this diagnostic result belongs. + The . + + + + Specifies the list of severity levels that diagnostic results can have. + + + + Information messages and tips about the configuration. + + + Warning messages that are likely to cause problems in your application. + + + + Specifies the list of diagnostic types that are currently supported by the diagnostic + . Note that new diagnostic types might be added in future versions. + For more information, please read the + Diagnosing your configuration using the Diagnostic + Services wiki documentation. + + + + + Diagnostic type that warns about + a concrete type that was not registered explicitly and was not resolved using unregistered type + resolution, but was created by the container using the transient lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + + Diagnostic type that warns when a + component depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + + Diagnostic type that warns when a + component depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + + Diagnostic type that warns when a component depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + + Diagnostic type that warns when multiple registrations map to the same component and + lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + + Diagnostic type that warns when a component is registered as transient, while implementing + . + For more information, see: https://simpleinjector.org/diadt. + + + + + Diagnostic type that warns when multiple registrations exist that map to the same component but + with different lifestyles, which will cause the component to be cached in different -possibly + incompatible- ways. + For more information, see: https://simpleinjector.org/diaal. + + + + + Diagnostic result for a warning about a component that is registered as transient, but implements + . + For more information, see: https://simpleinjector.org/diadt. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result for a warning about a + component that depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result that warns about a + component that depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + Gets the instance that describes the current relationship between the checked component + and the short-circuited dependency. + The . + + + + Gets the collection of registrations that have the component's current dependency as + implementation type, but have a lifestyle that is different than the current dependency. + + A collection of instances. + + + + Diagnostic result that warns about a component that depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + Gets the created type. + A . + + + Gets the list of registrations that are dependencies of the . + A collection of instances. + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + Gets the lifestyle on which instances are torn. + A . + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the list of registrations that are affected by this warning. + A list of instances. + + + + Thrown by the container in case of a diagnostic error. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message. + + The list of errors. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + Gets the list of instances. + A list of instances. + + + + Provides data for and interaction with the + ExpressionBuilding event of + the . An observer can change the + property to change the component that is + currently being built. + + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + + Gets the type that is known to be returned by the + Expression (most often the implementation + type used in the Register call). This type will be a derivative of + RegisteredServiceType (or + or RegisteredServiceType itself). If the Expression is changed, the new expression + must also return an instance of type KnownImplementationType or a sub type. + This information must be described in the new Expression. + + A . + + + Gets the lifestyle for the component that is currently being built. + The . + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Provides data for and interaction with the + ExpressionBuilt event of + the . An observer can change the + property to change the component that is currently + being built. + + + + Initializes a new instance of the class. + Type of the registered service. + The registered expression. + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + Gets or sets the current lifestyle of the registration. + The original lifestyle of the registration. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Helper methods for the container. + + + + + Contains contextual information about the direct consumer for which the given dependency is injected + into. + + + + Initializes a new instance of the class. + The constructor parameter for the created component. + + + Initializes a new instance of the class. + The implementation type of the consumer of the component that should be created. + The property for the created component. + + + Gets the service type of the consumer of the component that should be created. + The closed generic service type. + + + Gets the implementation type of the consumer of the component that should be created. + The implementation type. + + + + Gets the information about the consumer's target in which the dependency is injected. The target + can be either a property or a constructor parameter. + + The for this context. + + + + + + + + + + + + + + + + Discovers the attributes of the code element (a property or parameter) where a dependency will be + injected into, and provides access to its meta data. + + + + + Gets the constructor argument of the consumer of the component where the dependency will be + injected into. The property can return null. + + The or null when the dependency is injected into a property. + + + + + Gets the property of the consumer of the component where the dependency will be injected into. + The property can return null. + + The or null when the dependency is injected into a constructor + argument instead. + + + Gets the name of the target. + A string containing the name of the target. + + + Gets the type of the target. + A containing the type of the target. + + + Gets the member of the target. This is either the constructor of the parameter, or in + case the target is a property, the property itself will be returned. + A containing the type of the target. + + + + Returns an array of all of the custom attributes defined on either the or + the , excluding named attributes, or an empty array if there are no custom + attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + There is more than one attribute of type attributeType + defined on this member. + + + + Returns an array of custom attributes defined on either the or + the , identified by type, or an empty array if there are no custom + attributes of that type. + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + Thrown when attributeType is null. + + + + Indicates whether one or more instance of attributeType is defined on this either the + or the . + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + true if the attributeType is defined on this member; false otherwise. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The parameter to inspect. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The parameter to inspect.The parameter to inspect. + True to inspect the ancestors of element; otherwise, false. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The type of attribute to search for. + A custom attribute that matches attributeType, or null if no such attribute is found. + + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A custom attribute matching attributeType, or null if no such attribute is found. + + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter. + + The type of attribute to search for. + A collection of the custom attributes that are applied to element and that match T, or + an empty collection if no such attributes exist. + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter, and optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A collection of the custom attributes that are applied to element and that match T, or an + empty collection if no such attributes exist. + + + + + + + + + + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + GetCurrentRegistrations() or + GetRegistration(Type, bool). + + + The Register method overloads create InstanceProducer instances internally, but + InstanceProducers can be created manually to implement special scenarios. An + InstanceProducer wraps instance. The Registration builds an + that describes the intend to create the instance according to a certain + lifestyle. The InstanceProducer on the other hand transforms this Expression to a + delegate and allows the actual instance to be created. A Registration itself can't create any + instance. The InsanceProducer allows intercepting created instances by hooking onto the + Container.ExpressionBuilt event. The + RegisterDecorator methods for + instance work by hooking onto the ExpressionBuilt event and allow wrapping the returned instance + with a decorator. + + + The following example shows the creation of two different InstanceProducer instances that wrap + the same Registration instance. Since the Registration is created using the + Singleton lifestyle, both producers will return + the same instance. The InstanceProducer for the Interface1 however, will wrap that + instance in a (transient) Interface1Decorator. + (container); + + var producer1 = new InstanceProducer(typeof(Interface1), registration); + var producer2 = new InstanceProducer(typeof(Interface2), registration); + + container.RegisterDecorator(typeof(Interface1), typeof(Interface1Decorator)); + + var instance1 = (Interface1)producer1.GetInstance(); + var instance2 = (Interface2)producer2.GetInstance(); + + Assert.IsInstanceOfType(instance1, typeof(Interface1Decorator)); + Assert.IsInstanceOfType(instance2, typeof(ServiceImpl)); + + Assert.AreSame(((Interface1Decorator)instance1).DecoratedInstance, instance2); + ]]> + + + + Initializes a new instance of the class. + The service type for which this instance is created. + The . + + + + Gets the for this registration. The returned lifestyle can differ from the + lifestyle that is used during the registration. This can happen for instance when the registration + is changed by an ExpressionBuilt + registration or gets decorated. + + The for this registration. + + + Gets the service type for which this producer produces instances. + A instance. + + + Gets the instance for this instance. + The . + + + + Creates a new based on the given + and where the will be used as-is; + no interception (using ExpressionBuilt) such as + decorators will be applied. + + The service type for which this instance is created. + The expression that describes the instance to be produced. + The instance for this registration. + A new that describes the expression. + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + + Builds an expression that expresses the intent to get an instance by the current producer. A call + to this method locks the container. New registrations can't be made after a call to this method. + + An Expression. + + + + Gets the collection of relationships for this instance that the container knows about. + This includes relationships between the registered type and its dependencies and relationships + between applied decorators and their dependencies. Note that types that are not newed up by the + container and properties that are injected inside a custom delegate that is registered using the + RegisterInitializer + method are unknown to the container and are not returned from this method. + Also note that this method will return an empty collection when called before the + registered type is requested from the container (or before + Verify is called). + + An array of instances. + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + The various visualization options for building a string representation of + the object graph. + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + Thrown when options is null. + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + or . + + The service type. + + + Initializes a new instance of the class. + The . + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + A map containing a generic argument (such as T) and the concrete type (such as Int32) that it + represents. + + + + Implements equality. Needed for doing LINQ distinct operations. + The other to compare to. + True or false. + + + Overrides the default hash code. Needed for doing LINQ distinct operations. + An 32 bit integer. + + + + Container controlled collections can be supplied with both Type objects or direct Registration + instances. + + + + + Gets a message that describes the current exception. + + T + he error message that explains the reason for the exception, or an empty string(""). + + + + + Allows verifying whether a given type has a direct or indirect dependency on itself. Verifying is done + by preventing recursive calls to an InstanceProducer. A CyclicDependencyValidator instance checks a + single InstanceProducer and therefore a single service type. + + + + + Allows retrieving the concrete types of the generic type arguments of that must be used to create a + closed generic implementation of a given open generic implementation, based on on the concrete + arguments of the given closed base type. + + + + + Helper class for building closed generic type for a given open generic type and a closed generic base. + + + + Result of the GenericTypeBuilder. + + + + A open generic type with the concrete arguments that can be used to create a closed generic type. + + + + + Allows validating an ArgumentMapping. + + + + + Factory for the creation of a delegate that applies caching to the supplied + . + + A factory for creating new instances. + A factory that returns cached instances. + + + + Instances returned from the container can be cached. The contains several + overloads of the Register method that take a Lifestyle instance as argument to define + how returned instances should be cached. The core library contains two lifestyles out of the box. By + supplying Lifestyle.Transient, the registered instance is not + cached; a new instance is returned every time it is requested or injected. By supplying + Lifestyle.Singleton instances can be cached indefinitely; only + a single instance of the registered component will be returned by that container instance. Other + lifestyles are defined in integration and extension packages. The + CreateCustom method allows defining a custom lifestyle and + the CreateHybrid method + allows creating a lifestyle that mixes multiple other lifestyles. + + + This type is abstract and can be overridden to implement a custom lifestyle. + + + + + The lifestyle instance that doesn't cache instances. A new instance of the specified + component is created every time the registered service is requested or injected. + + + The following example registers the SomeServiceImpl implementation for the + ISomeService service type using the Transient lifestyle: + (Lifestyle.Transient); + ]]> + Note that Transient is the default lifestyle, the previous registration can be reduced to + the following: + (); + ]]> + + + + + + The lifestyle that caches components according to the lifetime of the container's configured + scoped lifestyle. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the active scope gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Scoped lifestyle: + (Lifestyle.Scoped); + ]]> + + + + + + The lifestyle that caches components during the lifetime of the instance + and guarantees that only a single instance of that component is created for that instance. Since + general use is to create a single Container instance for the lifetime of the application / + AppDomain, this would mean that only a single instance of that component would exist during the + lifetime of the application. In a multi-threaded applications, implementations registered using + this lifestyle must be thread-safe. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the container gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Singleton lifestyle: + (Lifestyle.Singleton); + ]]> + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the user friendly name of this lifestyle. + The user friendly name of this lifestyle. + + + + Gets the length of the lifestyle. Implementers must implement this property. The diagnostic + services use this value to compare lifestyles with each other to determine lifestyle + misconfigurations. + + The representing the length of this lifestyle. + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The lifestyle to use when + returns true. + The lifestyle to use when + returns false. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + lifestyle.GetCurrentScope(container) != null, + lifestyle, + Lifestyle.Transient); + + var mixedScopeLifestyle = Lifestyle.CreateHybrid( + () => HttpContext.Current != null, + new WebRequestLifestyle(), + mixedLifetimeTransientLifestyle); + ]]> + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Lifetime Scope and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The scoped lifestyle to use when + returns true. + The scoped lifestyle to use when + returns false. + A new scoped hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + + + + Creates a custom lifestyle using the supplied delegate. + + + The supplied will be called just once per registered + service. The supplied will be called by the framework + when the type is resolved for the first time, and the framework will supply the factory with a + Func<object> for creating new (transient) instances of that type (that might + have been intercepted and + initializers might have been applied). + It is the job of the to return a Func<object> + that applies the proper caching. The Func<object> that is returned by the + will be stored for that registration (every + registration will store its own Func<object> delegate) and this delegate will be + called every time the service is resolved (by calling + container.GetInstance<TService> or when that service is injected into another + type). + + The name of the lifestyle to create. The name is used to display the lifestyle + in the debugger. + A factory delegate that takes a Func<object> delegate + that will produce a transient instance and returns a delegate that returns cached instances. + A new . + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is an empty string. + + The following example shows the creation of a lifestyle that caches registered instances for 10 + minutes: + + { + TimeSpan timeout = TimeSpan.FromMinutes(10); + var syncRoot = new object(); + var expirationTime = DateTime.MinValue; + object instance = null; + + // If the application has multiple registrations using this lifestyle, each registration + // will get its own Func delegate (created here) and therefore get its own set + // of variables as defined above. + return () => + { + lock (syncRoot) + { + if (expirationTime < DateTime.UtcNow) + { + instance = instanceCreator(); + expirationTime = DateTime.UtcNow.Add(timeout); + } + + return instance; + } + }; + }); + + var container = new Container(); + + // We can reuse the created lifestyle for multiple registrations. + container.Register(customLifestyle); + container.Register(customLifestyle); + ]]> + + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified caching as + specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances instance using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + + The concrete type that will be registered. + The instance for which a + must be created. + A new or cached instance. + Thrown when is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + This method might fail when run in a partial trust sandbox when + is an internal type. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The delegate that will be responsible for creating new instances. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. An execution context scope flows with the logical execution context. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ExecutionContextScopeLifestyle class: + (Lifestyle.Scoped); + + using (AsyncScopedLifestyle.BeginScope(container)) + { + var instance1 = container.GetInstance(); + // ... + } + ]]> + + + + Initializes a new instance of the class. + + + + Begins a new scope for the given . + + The container. + A new instance. + + Thrown when the is a null reference. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + This lifestyle can be used to implement ambient context-less scoping in Simple Injector. This lifestyle + can be set as DefaultScopedLifestyle and later used via Lifestyle.Scoped to register scoped instances, + while instances are resolved via Scope.GetInstance. + + + + + Forwards CreateRegistration calls to the lifestyle that is returned from the registered + container.Options.LifestyleSelectionBehavior. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. A scope is thread-specific, each thread should define its own scope. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ThreadScopedLifestyle class: + (Lifestyle.Scoped); + + using (container.BeginLifetimeScope()) + { + var instance1 = container.GetInstance(); + + // This call will return the same instance. + var instance2 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance1, instance2)); + + // Create a nested scope. + using (container.BeginLifetimeScope()) + { + // A nested scope gets its own instance. + var instance3 = container.GetInstance(); + + Assert.IsFalse(object.ReferenceEquals(instance1, instance3)); + + // This call will return the same instance. + var instance4 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance3, instance4)); + } + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterConditional + overload that takes this delegate. This type contains information about the open generic service that + is about to be created and it allows the user to examine the given instance to decide whether this + implementation should be created or not. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the closed generic implementation type that will be created by the container. + + The implementation type. + + + Gets a value indicating whether a previous Register registration has already + been applied for the given . + The indication whether the event has been handled. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + A Registration implements lifestyle based caching for a single service and allows building an + that describes the creation of the service. + + + implementations create a new Registration instance for each registered + service type. s returned from the + BuildExpression method can be + intercepted by any event registered with , have + initializers + applied, and the caching particular to its lifestyle have been applied. Interception using the + Container.ExpressionBuilt will not + be applied in the Registration, but will be applied in . + + See the documentation for an example. + + + + + Initializes a new instance of the class. + + The this that created this registration. + The instance for this registration. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Gets the type that this instance will create. + The type that this instance will create. + + + Gets the this that created this registration. + The this that created this registration. + + + Gets the instance for this registration. + The instance for this registration. + + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. The default is false. Having a value of false, does not force an + instance to be disposed of, though; Transient instances, for instance, will never be disposed of. + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. + + + + Gets or sets a value indicating whether this registration object contains a user + supplied instanceCreator factory delegate. + + + + Builds a new with the correct caching (according to the specifications of + its ) applied. + + An . + + + + Gets the list of instances. Note that the list is only available + after calling . + + A new array containing the instances. + + + + Initializes an already created instance and applies properties and initializers to that instance. + + + This method is especially useful in integration scenarios where the given platform is in control + of creating certain types. By passing the instance created by the platform to this method, the + container is still able to apply any properties (as defined using a custom + ) and by applying any initializers. + + The instance to initialize. + Thrown when is a null + reference (Nothing in VB). + Thrown when the supplied is not + of type . + + + + Suppressing the supplied for the given registration. + + The . + The justification of why the warning must be suppressed. + Thrown when is a null + reference. + Thrown when either is an + empty string or when is not a valid value of . + + + + + Builds a delegate for the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers + that are applicable to the given (if any). + + The interface or base type that can be used to retrieve instances. + + The delegate supplied by the user that allows building or creating new instances. + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds a delegate for the creation of . + The returned might be intercepted by a + Container.ExpressionBuilding event, + and the creation of the will have been wrapped with a + delegate that executes the registered + initializers + that are applicable to the given (if any). + + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds an that describes the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers that are + applicable to the given (if any). + + + The interface or base type that can be used to retrieve instances. + + + The delegate supplied by the user that allows building or creating new instances. + An . + Thrown when one of the arguments is a null reference. + + + + + Builds an that describes the creation of . + The returned might be intercepted + by a Container.ExpressionBuilding + event, and the creation of the will have been wrapped with + a delegate that executes the registered + initializers that are applicable + to the InstanceProducer's ServiceType (if any). + + An . + Thrown when one of the arguments is a null reference. + + + Implements a cache for implementations. + + is thread-safe can be used over multiple threads concurrently, but note that the + cached instances might not be thread-safe. + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The container instance that the scope belongs to. + + + Gets the container instance that this scope belongs to. + The instance. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Adds the to the list of items that will get disposed when the + scope ends. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances are returned + in order of creation/registration. When Scope.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be disposed in opposite + order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + Releases all instances that are cached by the object. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType -or- null if there is no service object of type + . + + + + Releases all instances that are cached by the object. + + False when only unmanaged resources should be released. + + + + Base class for scoped lifestyles. A scoped lifestyle caches instances for the duration of an implicitly + or explicitly defined scope. Such scope can be an (implicitly defined) web request or an explicitly + defined Lifetime Scope. The lifetime of instances registered with a scoped lifestyle is always equal + or bigger than one-instance-per-object-graph. In other words, a call to GetInstance() will never create + more than one instance of such registered type. + + + + + Gets the scoped lifestyle that allows Scoped registrations to be resolved direclty from the + by calling . This allows multiple + scopes to be active and overlap within the same logical context, such as a single thread, or an + asynchronous context. + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Signals the lifestyle whether instances should be + disposed or not. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the length of the lifestyle. + The representing the length of this lifestyle. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The instance. + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Adds the to the list of items that will get disposed when the + scope ends. + + The instance. + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method should never return null. + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + + By default, this method calls the method and invokes the + returned delegate. This method can be overridden to provide an optimized way for getting the + current scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + Internal helper for string resources. + + + + Contains contextual information for creating an implementation type. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + Returns a list of base types and interfaces of implementationType that either + equal to serviceType or are closed or partially closed version of serviceType (in case + serviceType itself is generic). + So: + -in case serviceType is non generic, only serviceType will be returned. + -If implementationType is open generic, serviceType will be returned (or a partially closed + version of serviceType is returned). + -If serviceType is generic and implementationType is not, a closed version of serviceType will + be returned. + -If implementationType implements multiple (partially) closed versions of serviceType, all those + (partially) closed versions will be returned. + + The (open generic) service type to match. + The implementationType to search. + A list of types. + + + Useful extensions on . + + + + Builds an easy to read type name. Namespaces will be omitted, and generic types will be displayed + in a C#-like syntax. Ideal for reporting type names in exception messages. + + The type to convert. + A human-readable string representation of that type. + Thrown when the supplied argument is a null reference. + + + + Returns true is there is a closed version of the supplied + that is assignable from the current . This method returns true when either + itself, one of its base classes or one of its implemented interfaces is a + closed version of ; otherwise false. + + The type to check. + The generic type definition to match. + True when type is assignable; otherwise false. + + + + Gets the single closed version of that the current + is assignable from. In case none or multiple matching closed types are + found, and exception is thrown. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + The matching closed type. + Thrown when one of the arguments is a null reference. + Thrown when is not + a generic type or when none of the base classes or implemented interfaces of + are closed-versions of . + Thrown when multiple matching closed generic types + are found. + + + + Gets the list of closed versions of that the current + is assignable from. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + A list of matching closed generic types. + + + + Defines options to control the types returned from the + GetTypesToRegister + method. For a type to be returned, it should match all the conditions described by the class's + properties. In other words, in case the searched assembly contains a generic type, that is both a + decorator and a composite, it will only be returned by GetTypesToRegister in case both + , and + are set to true. + + + + Initializes a new instance of the class. + + + + Gets or sets a value indicating whether decorator types should be included in the result. The default + value of this property is false. A type is considered a decorator if the type's constructor + contains a parameter of the type that exactly matches the serviceType argument, + supplied to the + GetTypesToRegister + method, or when there is a argument where T matches the + serviceType argument. + + A boolean. + + + + Gets or sets a value indicating whether generic type definitions (types that have + Type.IsGenericTypeDefinition + set to true) + should be included in the result. The default value for this property is false. + + A boolean. + + + + Gets or sets a value indicating whether composite types should be included in the result. The default + value of this property is true. A type is considered a composite if the type's constructor + contains a parameter of IEnumerable<T>, ICollection<T>, + IList<T>, IReadOnlyCollection<T>, + IReadOnlyList<T> or T[] (array of T), where T + exactly matches the serviceType argument, supplied to the + GetTypesToRegister + method. + + A boolean. + + + + Provides data for and interaction with the + ResolveUnregisteredType event of + the . An observer can check the + to see whether the unregistered type can be handled. The + method can be called to register a delegate + that allows creation of instances of the unregistered for this and future requests. + + + + Gets the unregistered service type that is currently requested. + The unregistered service type that is currently requested. + + + + Gets a value indicating whether the event represented by this instance has been handled. + This property will return true when has been called on + this instance. + + The indication whether the event has been handled. + + + + Registers a delegate that allows creation of instances of the type + expressed by the for this and future requests. The delegate + will be caches and future requests will directly call that delegate. + + The delegate that allows creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers an that describes the creation of instances of the type + expressed by the for this and future requests. The delegate + will be cached and future requests will directly use that expression or the compiled delegate. + + + NOTE: If possible, use the Register(Registration) overload, + since this allows the analysis services to determine any configuration errors on the lifestyle of + the registration. + + The expression that describes the creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers a that describes the creation of instances of the type + expressed by the for this and future requests. The + registration will be cached and future requests will directly call unon that registration, the + expression that it generates or the delegate that gets compiled from that expression. + + The registration that describes the creation of instances according to + the registration's lifestyle of the type expressed by the . + Thrown when the is a + null reference. + Thrown when the is a + not exactly of type where T equals the . + + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + This enumeration defines in which way the container should run the verification process. + + + + + Specifies that the container performs verification only, which means that it will test whether + all registrations can be constructed by iterating the registrations and letting the container + create at least one instance of each registration. An + will be thrown in case the configuration is invalid. + + + + + Specifies that the container will run diagnostic analysis after the verification succeeded. The + container will diagnose the configuration with a subset of the available diagnostic warnings, that + are most likely an indication of a configuration mistake. A complete set of diagnostic warnings + can be retrieved by calling + Analyzer.Analyze or by viewing the + container in the Visual Studio debugger, after the verification has succeeded. + + + + + Visualization options for providing various information about instances. + + + + + Gets or sets a value indicating whether to include lifestyle information in the visualization. + + The value to include life style information. + + + + Gets or sets a value indicating whether to use fully qualified type names in the visualization. + + The value to use fully qualified type names. + + + diff --git a/packages/SimpleInjector.4.9.1/lib/net45/SimpleInjector.dll b/packages/SimpleInjector.4.9.1/lib/net45/SimpleInjector.dll new file mode 100644 index 0000000..15cb0cd Binary files /dev/null and b/packages/SimpleInjector.4.9.1/lib/net45/SimpleInjector.dll differ diff --git a/packages/SimpleInjector.4.9.1/lib/net45/SimpleInjector.xml b/packages/SimpleInjector.4.9.1/lib/net45/SimpleInjector.xml new file mode 100644 index 0000000..4383e73 --- /dev/null +++ b/packages/SimpleInjector.4.9.1/lib/net45/SimpleInjector.xml @@ -0,0 +1,6206 @@ + + + + SimpleInjector + + + + + The standard exception thrown when a container has an error in resolving an object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + + Extension methods for enable advanced scenarios. + + + + + Determines whether the specified container is locked making any new registrations. The container + is automatically locked when GetInstance is called for the + first time. + + The container. + + true if the specified container is locked; otherwise, false. + + Thrown when is null. + + + Determines whether the specified container is currently verifying its configuration. + The container. + true if the specified container is verifying; otherwise, false. + Thrown when is null. + + + + Retrieves an item from the container stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The container. + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Stores an item by the given in the container. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The container. + The key of the item to insert or override. + The actual item. May be null. + Thrown when either or + is a null reference (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The container. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either , + or is a null reference (Nothing in VB). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Common base class for Simple Injector API classes. + + + + + + + + + + + + + Gets the of the current instance. + The instance that represents the exact runtime + type of the current instance. + + + Deprecation extensions. + + + + This interface method has been removed. Please call GetInstanceProducerFor instead. + + The behavior. + The consumer. + Throws an exception. + + + + This interface method has been removed. Please call SelectProperty(PropertyInfo) instead. + + The behavior. + Type of the abstraction that is requested. + The property to check. + True when the property should be injected. + + + + Defines the container's behavior for finding a suitable constructor for the creation of a type. + Set the ConstructorResolutionBehavior + property of the container's property to change the default behavior + of the container. + + + + + Gets the given 's constructor that can be used by the + container to create that instance. + + Type of the implementation to find a suitable constructor for. + + The . This method never returns null. + + Thrown when no suitable constructor could be found. + + + + Defines the container's behavior for building an expression tree for an dependency to inject, based on + the information of the consuming type the dependency is injected into. + Set the ConstructorInjectionBehavior + property of the container's property to change the default behavior + of the container. + + + + Verifies the specified . + Contextual information about the consumer where the built dependency is + injected into. + + Thrown when the type of the target supplied with + the supplied cannot be used for auto wiring. + Thrown when the supplied argument is a null reference. + + + + Gets the for the + Target of the supplied . + + Contextual information about the consumer where the built dependency is + injected into. + The indication whether the method should return null or throw + an exception when the type is not registered. + An that describes the intend of creating that + Target. This method never returns null. + Thrown when the argument is a null reference. + + + + Defines the container's behavior for selecting the lifestyle for a registration in case no lifestyle + is explicitly supplied. + Set the LifestyleSelectionBehavior + property of the container's property to change the default behavior + of the container. By default, when no lifestyle is explicitly supplied, the + Transient lifestyle is used. + + + + Selects the lifestyle based on the supplied type information. + Type of the implementation to that is registered. + The suited for the given type. + Thrown when either one of the arguments is a null reference. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterResolveInterceptor + method that takes this delegate. This type contains contextual information about a resolved type and it + allows the user to examine the given instance to decide whether the + should be applied or not. + + + + + Gets the that is responsible for the initialization of the created + instance. + + The or null (Nothing in VB) when the instance producer is + unknown. + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterInitializer + overload that takes this delegate. This type contains contextual information about the creation and it + allows the user to examine the given instance to decide whether the instance should be initialized or + not. + + + + + Gets a null reference. This property has been deprecated. + + The null (Nothing in VB). + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + Contains data that can be used to initialize a created instance. This data includes the actual + created and the information about the created instance. + + + + Initializes a new instance of the struct. + The that contains contextual information + about the created instance. + The created instance. + + + Gets the with contextual information about the + created instance. + The . + + + Gets the created instance. + The created instance. + + + + + + + + + + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + True if a and b are equal; otherwise, false. + + + + Indicates whether the values of two specified objects are + not equal. + + The first object to compare. + The second object to compare. + True if a and b are not equal; otherwise, false. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + + + Initializes a new instance of the struct. + The scope factory. + The container. + + + Gets the lazily initialized Scope of the current LazyScope instance. + The current Scope or null. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + Implementation type. + + + + Initializes a new instance of the + struct. + The registration. + + + + Gets the lazily initialized instance for the of the current LazyScopedRegistration. + + The scope that is used to retrieve the instance. + The cached instance. + + + + Defines the container's behavior for selecting properties to inject during the creation of a type. + Set the PropertySelectionBehavior + property of the container's property to change the default behavior + of the container. By default, no properties will be injected by the container. + + + + + Determines whether a property should be injected by the container upon creation of its type. + + + The type being created for which the property should be injected. Note that this might a + different type than the type on which the property is declared (which might be a base class). + The property to check. + True when the property should be injected. + + + + A known relationship defines a relationship between two types. The Diagnostics Debug View uses this + information to spot possible misconfigurations. + + + + Initializes a new instance of the class. + The implementation type of the parent type. + The lifestyle of the parent type. + The type that the parent depends on (it is injected into the parent). + + + Gets the implementation type of the parent type of the relationship. + The implementation type of the parent type of the relationship. + + + Gets the lifestyle of the parent type of the relationship. + The lifestyle of the parent type of the relationship. + + + Gets the type that the parent depends on (it is injected into the parent). + The type that the parent depends on. + + + + + + + + + + + + + The container. Create an instance of this type for registration of dependencies. + + + + Thread-safety: + Resolving instances can be done safely from multiple threads concurrently, but registration needs to + be done from one single thread. + + + It is therefore safe to call , , + GetService, and + and anything related to resolving instances from multiple thread + concurrently. It is however unsafe to call + RegisterXXX, + , , , + or anything related to registering from multiple threads concurrently. + + + Common Container methods specific for the full .NET version of Simple Injector. + Methods for batch registration. + Methods for registration of collections. + Methods for conditional registrations. + + These conditional registration methods lack a Func{PredicateContext, TService} predicate + method. This is deliberate, because would force the factory to be registered as transient, forcing + the whole parent structure to become transient as well. Besides this, it would blind the diagnostic + system, because it will stop at the delegate, instead of being able to analyze the object graph as + a whole. + + Methods for registration. + Methods for registration of decorators. + Methods for resolving instances. + Methods for verifying the container. + + + Initializes a new instance of the class. + + + Gets the container options. + The instance for this container. + + + Gets the container scope that that manages the lifetime of singletons and other + container-controlled instances. Use this property to register actions that need to be called + and instances that need to be disposed when the container gets disposed. + The instance for this container. + + + + Gets a value indicating whether the container is currently being verified on the current thread. + + True in case the container is currently being verified on the current thread; otherwise + false. + + + + Gets the intermediate lifestyle that forwards CreateRegistration calls to the lifestyle that is + returned from the registered container.Options.LifestyleSelectionBehavior. + + + + + Returns an array with the current registrations. This list contains all explicitly registered + types, and all implicitly registered instances. Implicit registrations are all concrete + unregistered types that have been requested, all types that have been resolved using + unregistered type resolution (using the event), and + requested unregistered collections. Note that the result of this method may change over time, + because of these implicit registrations. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + + + + Returns an array with the current registrations for root objects. Root objects are registrations + that are in the root of the object graph, meaning that no other registration is depending on it. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + This list contains the root objects of all explicitly registered types, and all implicitly + registered instances. Implicit registrations are all concrete unregistered types that have been + requested, all types that have been resolved using unregistered type resolution (using the + event), and requested unregistered collections. Note that + the result of this method may change over time, because of these implicit registrations. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + Thrown when this method is called before + has been successfully called. + + + Releases all instances that are cached by the object. + + + Prevents any new registrations to be made to the container. + + + Releases all instances that are cached by the object. + True for a normal dispose operation; false to finalize the handle. + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + An assembly that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the transient lifestyle. + + The definition of the open generic type. + A list types to be registered. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the given . + + The definition of the open generic type. + A list types to be registered. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + assemblies = new[] { typeof(ILogger).Assembly }; + var types = container.GetTypesToRegister(assemblies) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ( + typeof(ILogger).Assembly, + typeof(FileLogger).Assembly) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Container.Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete types that are located in the supplied + and implement or inherit from the supplied and match the specified + . can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var options = new TypesToRegisterOptions { IncludeGenericTypeDefinitions: true }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies, options) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + The options. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Registers a dynamic (container-uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + + The container-uncontrolled collection to register. + + + Thrown when this container instance is locked and can not be altered, or when a + for has already + been registered. + + + Thrown when is a null reference. + + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when and + are not a generic type or when + is a partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of the type returned from + will be returned every time a + is requested and where the supplied + returns true. The instance is cached according to the supplied + . Both the and + will only be evaluated a finite number of times; + they unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + A factory that allows building Type objects that define the + implementation type to inject, based on the given contextual information. The delegate is allowed + to return (partially) open-generic types. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the registration can be applied for + the requested service type. This predicate can be used to build a fallback mechanism where + multiple registrations for the same service type are made. + Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is a + partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + is requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is open generic or + is not assignable to . + + Thrown when this container instance is locked and can not be altered. + + + + + Occurs when an instance of a type is requested that has not been registered explicitly, allowing + resolution of unregistered types before the container tries to create the type. + + + + The event is called by the container every time an + unregistered type is requested for the first time, allowing a developer to do unregistered type + resolution. By calling the + Register method on the + , a , or + delegate can be registered allowing the container to retrieve + instances of the requested type. This registration is cached and it prevents the + ResolveUnregisteredType event from being called again for the same type. + + + When no registered event handled the registration of an unregistered type, the container will try + to create the type when this type is either concrete or is the + interface. Concrete types will be registered with the Transient + lifestyle and registrations will return an empty collection. When no + even handled the registration and the container could not create it, an exception is thrown. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once. While the calls to for a given type + are finite (and will in most cases happen just once), a container can call the delegate multiple + times and make parallel calls to the delegate. You must make sure that the code can be called + multiple times and is thread-safe. + + + + The following example shows the usage of the event: + + { + void Validate(T instance); + } + + // Implementation of the null object pattern. + public class EmptyValidator : IValidator + { + public void Validate(T instance) + { + // Does nothing. + } + } + + [TestMethod] + public void TestResolveUnregisteredType() + { + // Arrange + var container = new Container(); + + // Register an EmptyValidator to be returned when a IValidator is requested: + container.ResolveUnregisteredType += (sender, e) => + { + if (e.UnregisteredServiceType.IsGenericType && + e.UnregisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var validatorType = typeof(EmptyValidator<>).MakeGenericType( + e.UnregisteredServiceType.GetGenericArguments()); + + // Register the instance as singleton. + e.Register(Lifestyle.Singleton.CreateRegistration(validatorType, container)); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(EmptyValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(EmptyValidator)); + } + ]]> + + The example above registers a delegate that is raised every time an unregistered type is requested + from the container. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will request the container for a concrete EmptyValidator<T> implementation that + implements the given + UnregisteredServiceType, and + registers a delegate that will return this created instance. The e.Register call + registers the method in the container, preventing the from + being called again for the exact same service type, preventing any performance penalties. + + + Please note that given example is just an uhhmm... example. In the case of the example the + EmptyValidator<T> can be better registered using of the built-in + Register methods instead. These methods take + care of any given generic type constraint and allow the implementation to be integrated into the + container's pipeline, which allows it to be intercepted using the + event and allow any registered initializers to be + applied. + + + + + + Occurs after the creation of the of a registered type is complete (the + lifestyle has been applied), allowing the created to be wrapped, + changed, or replaced. Multiple delegates may handle the same service type. + + + + The ExpressionBuilt event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilt event, can change the + property on the + , which allows changing the way the type is constructed. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to for a + given type are finite (and will in most cases happen just once), a container can call the delegate + multiple times and make parallel calls to the delegate. You must make sure that the code can be + called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilt event: + + { + void Validate(T instance); + } + + public interface ILogger + { + void Write(string message); + } + + // Implementation of the decorator pattern. + public class MonitoringValidator : IValidator + { + private readonly IValidator validator; + private readonly ILogger logger; + + public MonitoringValidator(IValidator validator, ILogger logger) + { + this.validator = validator; + this.logger = logger; + } + + public void Validate(T instance) + { + this.logger.Write("Validating " + typeof(T).Name); + this.validator.Validate(instance); + this.logger.Write("Validated " + typeof(T).Name); + } + } + + [TestMethod] + public void TestExpressionBuilt() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + container.Register, OrderValidator>(); + container.Register, CustomerValidator>(); + + // Intercept the creation of IValidator instances and wrap them in a MonitoringValidator: + container.ExpressionBuilt += (sender, e) => + { + if (e.RegisteredServiceType.IsGenericType && + e.RegisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var decoratorType = typeof(MonitoringValidator<>) + .MakeGenericType(e.RegisteredServiceType.GetGenericArguments()); + + // Wrap the IValidator in a MonitoringValidator. + e.Expression = Expression.New(decoratorType.GetConstructors()[0], new Expression[] + { + e.Expression, + container.GetRegistration(typeof(ILogger)).BuildExpression(), + }); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(MonitoringValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(MonitoringValidator)); + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will changes the current with a new one that creates + a new MonitoringValidator<T> that takes the current validator (and an ILogger) + as an dependency. + + + Please note that given example is just an uhhmm... example. In the case of the example the + MonitoringValidator<T> is a decorator and instead of manually writing this code that + many limitations, you can use one of the built-in + RegisterDecorator methods instead. + These extension methods take care of any given generic type constraint, allow to register decorators + conditionally and allow the decorator to be integrated into the container's pipeline, which allows + it to be intercepted using the event and allow any registered + initializers to be applied. + + + + + + Occurs directly after the creation of the of a registered type is made, + but before any initializer and lifestyle specific caching + has been applied, allowing the created to be altered. Multiple delegates + may handle the same service type. + + + + The ExpressionBuilding event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilding event, can change the + property on the + , which allows changing the way the type is constructed. + + + The exact type supplied depends on the type of registration. + Registrations that explicitly supply the implementation type (such as + Register<TService, TImplementation>()) + will result in an , while registrations that take a delegate (such as + Register<TService>(Func<TService>)) + will result in an . Singletons that are passed in using their + value (RegisterInstance<TService>(TService)) + will result in an . Note that other ExpressionBuilding + registrations might have changed the + property and might have supplied an of a different type. The order in + which these events are registered might be of importance to you. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to registered ExpressionBuilding + events for a given type are finite (and will in most cases happen just once), a container can + call the delegate multiple times and make parallel calls to the delegate. You must make sure that + the code can be called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilding event: + + { + var expression = e.Expression as NewExpression; + + if (expression != null) + { + var propertiesToInject = + from property in expression.Constructor.DeclaringType.GetProperties() + where property.GetCustomAttributes(typeof(MyInjectPropertyAttribute), true).Any() + let registration = container.GetRegistration(property.PropertyType, true) + select Tuple.Create(property, registration); + + if (propertiesToInject.Any()) + { + Func[], object> injectorDelegate = + (instance, dependencies) => + { + foreach (var dependency in dependencies) + { + dependency.Item1.SetValue(instance, dependency.Item2.GetInstance(), null); + } + + return instance; + }; + + e.Expression = Expression.Convert( + Expression.Invoke( + Expression.Constant(injectorDelegate), + e.Expression, + Expression.Constant(propertiesToInject.ToArray())), + expression.Constructor.DeclaringType); + } + } + }; + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks if the type contains properties that are + decorated with the supplied MyInjectPropertyAttribute. If decorated properties are found, + the given expression is replaced with an expression that injects decorated properties. + + + + + Gets the object that allows access to methods related to registration and creation of collections. + The instance for this container. + + + This property is obsolete. Please use instead. + The instance for this container. + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that an instance of will be returned when it + is requested. The instance is cached according to the supplied . + + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a new instance of will be returned every time a + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers that an instance of will be returned when an + instance of type is requested. The instance is cached according to + the supplied . + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning transient instances of + . The delegate is expected to always return a new instance on + each call. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. This can be an open-generic type. + Thrown when is a null + references (Nothing in VB). + Thrown when represents + a type that can not be created by the container. + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that a new instance of will be returned every time a + is requested. If and + represent the same type, the type is registered by itself. + Open and closed generic types are supported. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when or + are null references (Nothing in VB). + Thrown when is + no sub type from (or the same type). + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that an instance of type will be returned when an + instance of type is requested. The instance is cached according to + the supplied . Open and closed generic types are supported. + + The interface or base type that can be used to retrieve the instances. + This can be an open-generic type. + The concrete type that will be registered. + This can be an open-generic type. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container, when either + or are open generic types, or when + is not assignable from the . + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Registers the specified delegate that allows returning instances of . + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. + The delegate that will be used for creating new instances. + Thrown when either or + are null references (Nothing in VB). + Thrown when represents an + open generic type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use the overload that accepts a delegate. + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton(Type, Func<object>). + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single concrete instance that will be constructed using constructor injection and will + be returned when this instance is requested by type . + This must be thread-safe when working in a multi-threaded + environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when + has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that the same a single instance of type will be + returned every time an type is requested. If + and represent the same + type, the type is registered by itself. must be thread-safe + when working in a multi-threaded environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + + The interface or base type that can be used to retrieve the instances. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows constructing a single instance of + . This delegate will be called at most once during the lifetime of + the application. The returned instance must be thread-safe when working in a multi-threaded + environment. + If the instance returned from implements , + the created instance will get disposed when Container.Dispose + gets called. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating this single + instance. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a + null reference. + + + + Registers that the same instance of type will be returned every + time an instance of type type is requested. If + and represent the same type, the + type is registered by itself. must be thread-safe when working + in a multi-threaded environment. Open and closed generic types are supported. + + The base type or interface to register. + This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from , or when one of them represents an open generic + type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that allows constructing a single + instance. The container will call this delegate at most once during the lifetime of the application. + + The base type or interface to register. + The delegate that will be used for creating that single instance. + Thrown when represents an open + generic type. + Thrown when either or + are null references (Nothing in + VB). + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers an delegate that runs after the creation of instances that + implement or derive from the given . Please note that only instances + that are created by the container (using constructor injection) can be initialized this way. + + The type for which the initializer will be registered. + The delegate that will be called after the instance has been + constructed and before it is returned. + + Thrown when the is a null reference. + + + Thrown when this container instance is locked and can not be altered. + + + Multiple delegates can be registered per + and multiple initializers can be applied on a created instance, + before it is returned. For instance, when registering a + for type , the delegate will be called for every instance created by + the container, which can be nice for debugging purposes. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + The following example shows the usage of the + RegisterInitializer method: + + (); + + // Configuring property injection for types that implement ICommand: + container.RegisterInitializer(command => + { + command.SendAsync = true; + }); + + // Configuring property injection for types that implement CommandBase: + container.RegisterInitializer(command => + { + command.Clock = container.GetInstance(); + }); + + // Act + var command = (ConcreteCommand)container.GetInstance(); + + // Assert + // Because ConcreteCommand implements both ICommand and CommandBase, + // both the initializers will have been executed. + Assert.IsTrue(command.SendAsync); + Assert.IsNotNull(command.Clock); + } + ]]> + + The container does not use the type information of the requested service type, but it uses the + type information of the actual implementation to find all initialized that apply for that + type. This makes it possible to have multiple initializers to be applied on a single returned + instance while keeping performance high. + + + Registered initializers will only be applied to instances that are created by the container self + (using constructor injection). Types that are newed up manually by supplying a + delegate to the container (using the + method) or registered as single instance + (using ) will not trigger initialization. + When initialization of these instances is needed, this must be done manually, as can be seen in + the following example: + commandInitializer = command => + { + initializerCallCount++; + }); + + // Configuring that initializer. + container.RegisterInitializer(commandInitializer); + + container.Register(() => + { + // Create a ConcreteCommand manually: will not be initialized. + var command = new ConcreteCommand("Data Source=.;Initial Catalog=db;"); + + // Run the initializer manually. + commandInitializer(command); + + return command; + }); + + // Act + var command = container.GetInstance(); + + // Assert + // The initializer will only be called once. + Assert.AreEqual(1, initializerCallCount); + } + ]]> + The previous example shows how a manually created instance can still be initialized. Try to + prevent creating types manually, by changing the design of those classes. If possible, create a + single public constructor that only contains dependencies that can be resolved. + + + + + + Registers an delegate that runs after the + creation of instances for which the supplied returns true. Please + note that only instances that are created by the container can be initialized this way. + + The delegate that will be called after the instance has been + constructed and before it is returned. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + Note: The is not guaranteed to be called once per registration; + when a registration's instance is requested for the first time simultaneously over multiple thread, + the predicate might be called multiple times. The caller of this method is responsible of supplying + a predicate that is thread-safe. + + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is ambiguous, + when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Act + IFoo foo = container.GetInstance(); + IBar bar = container.GetInstance(); + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + + In the example above a singleton registration is created for type FooBar and this + registration is added to the container for each interface (IFoo and IBar) that it + implements. Since both services use the same singleton registration, requesting those services + will result in the return of the same (singleton) instance. + + + events are applied to the of the + instance and are therefore applied once. + events on the other hand get applied to the Expression of the . + Since each AddRegistration gets its own instance producer (that wraps the + Registration instance), this means that the ExpressionBuilt events will be + applied for each registered service type. + + + The most practical example of this is the use of decorators using one of the + RegisterDecorator overloads (decorator registration + use the ExpressionBuilt event under the covers). Take a look at the following example: + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Registere a decorator for IBar, but not for IFoo + container.RegisterDecorator(typeof(IBar), typeof(BarDecorator)); + + // Act + var foo = container.GetInstance(); + var decorator = container.GetInstance() as BarDecorator; + var bar = decorator.DecoratedBar; + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + The example shows that the decorator gets applied to IBar but not to IFoo, but that + the decorated IBar is still the same instance as the resolved IFoo instance. + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is not a reference + type, is open generic, is ambiguous, when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . By default, a new + instance will be returned on each request (according the + Transient lifestyle), independently of the lifestyle of the + wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + + Thrown when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type or + where T is . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . Decorators can be applied to both open, closed, and + non-generic service types. By default, a new instance will be + returned on each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + The following example shows the definition of a generic ICommandHandler<T> interface, + a CustomerMovedCommandHandler implementing that interface, and a + ValidatorCommandHandlerDecorator<T> that acts as a decorator for that interface. + + { + void Handle(TCommand command); + } + + public class CustomerMovedCommand + { + [Required] + public int CustomerId { get; set; } + + [Required] + public Address Address { get; set; } + } + + public class CustomerMovedCommandHandler + : ICommandHandler + { + public void Handle(CustomerMovedCommand command) + { + // some logic + } + } + + // Decorator that validates commands before they get executed. + public class ValidatorCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly Container container; + + public ValidatorCommandHandlerDecorator( + ICommandHandler decoratedHandler, + Container container) + { + this.decoratedHandler = decoratedHandler; + this.container = container; + } + + public void Handle(TCommand command) + { + this.Validate(command); + + this.decoratedHandler.Handle(command); + } + + private void Validate(TCommand command) + { + var validationContext = + new ValidationContext(command, this.container, null); + + Validator.ValidateObject(command, validationContext); + } + } + + // Decorator that measures the time it takes to execute a command. + public class MonitoringCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly ILogger logger; + + public MonitoringCommandHandlerDecorator( + ICommandHandler decoratedHandler, + ILogger logger) + { + this.decoratedHandler = decoratedHandler; + this.logger = logger; + } + + public void Handle(TCommand command) + { + var watch = Stopwatch.StartNew(); + + this.decoratedHandler.Handle(command); + + this.logger.Log(string.Format("{0} executed in {1} ms.", + command.GetType().Name, watch.ElapsedMilliseconds)); + } + } + + [TestMethod] + public static void TestRegisterOpenGenericDecorator() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + + // Search the given assembly and register all concrete types that + // implement ICommandHandler. + container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), + typeof(ICommandHandler<>).Assembly); + + // Wrap all ICommandHandler service types with a decorator + // that measures and logs the duration of that handler. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(MonitoringCommandHandlerDecorator<>)); + + // Wrap all ICommandHandler types (in this case it will + // wrap the monitoring decorator), but only if the TCommand contains + // any properties. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(ValidatorCommandHandlerDecorator<>), context => + { + var commandType = context.ServiceType.GetGenericArguments()[0]; + bool mustDecorate = commandType.GetProperties().Any(); + return mustDecorate; + }); + + // Act + var handler = + container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(handler, + typeof(ValidatorCommandHandlerDecorator)); + } + ]]> + + The (possibly open generic) service type that will be wrapped by the + given . + The (possibly the open generic) decorator type that will + be used to wrap the original service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or implement + , when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned when the supplied + returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the decorator type that is returned from is + supplied when the supplied returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the decorator type that is returned by the + supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The types returned from the may be non-generic, + closed-generic, open-generic and even partially-closed generic. The container will try to fill in + the generic parameters based on the resolved service type. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The type returned from may have a constructor with an + argument of type where T is . In this + case, the library will not inject the decorated itself into the + decorator instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + The following is an example of the registration of a decorator through the factory delegate: + , MoveCustomerCommandHandler>(); + + container.RegisterDecorator( + typeof(ICommandHandler<>), + context => typeof(LoggingCommandHandler<,>).MakeGenericType( + typeof(LoggingCommandHandler<,>).GetGenericArguments().First(), + context.ImplementationType), + Lifestyle.Transient, + context => true); + + var handler = container.GetInstance>(); + + Assert.IsInstanceOfType(handler, + typeof(LoggingCommandHandler)); + + ]]> + The code above allows a generic LoggingCommandHandler<TCommand, TImplementation> to + be applied to command handlers, where the second generic argument will be filled in using the + contextual information. + + The definition of the (possibly open generic) service type that will + be wrapped by the decorator type that is returned from . + A factory that allows building Type objects that define the + decorators to inject, based on the given contextual information. The delegate is allowed to return + (partially) open-generic types. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the decorator must be applied to a + service type. + Thrown when one of the arguments is a null reference. + + + + Ensures that the supplied decorator is returned when the supplied + returns true, wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. By default, a new instance will be returned on + each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when does not inherit + from or implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested TService. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested serviceType. + Thrown when there are errors resolving the service instance. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType. -or- null if there is no service object of type + . + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + An or null (Nothing in VB). + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned, or an exception is throw when + is set to true. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + The indication whether the method should return null or throw + an exception when the type is not registered. + An or null (Nothing in VB). + + + + Verifies and diagnoses this Container instance. This method will call all registered + delegates, iterate registered collections and throws an exception if there was an error. + + Thrown when the registration of instances was + invalid. + + + + Verifies the Container. This method will call all registered delegates, + iterate registered collections and throws an exception if there was an error. + + Specifies how the container should verify its configuration. + Thrown when the registration of instances was + invalid. + Thrown in case there are diagnostic errors and + the option is supplied. + Thrown when has an invalid value. + + + + Contains methods for registering and creating collections in the . + + + + + Gets the for this instance. + + The for this instance. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new to a collection of registrations for the given + . Calls to Append can both preceed and follow a call to one + of the Container.Collections.Register + overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + Thrown when the is ambiguous. + + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + The lifestyle that specifies how the returned instance will be cached. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends the specified delegate to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The element type of the collections to register. + The instance to register. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + TThe element type of the collections to register. + The instance to register. + Thrown when the is ambiguous, or + does not implement . + + Thrown when either or + are null references. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + The container-uncontrolled collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Provides data for and interaction with the + ContainerLocking event of + the . + + + + + Delegate that allows intercepting calls to and + . + + Contextual information about the to be created object. + A delegate that produces the actual instance according to its + lifestyle settings. + The instance that is returned from or an intercepted instance. + + + Configuration options for the Container. + + The following example shows the typical usage of the ContainerOptions class. + (); + + // Use of ContainerOptions class here. + container.Options.AllowOverridingRegistrations = true; + + // Replaces the previous registration of ITimeProvider + container.Register(); + ]]> + + + + + Occurs just before the container is about to be locked, giving the developer a last change to + interact and change the unlocked container before it is sealed for further modifications. Locking + typically occurs by a call to Container.GetInstance, Container.Verify, or any other + method that causes the construction and resolution of registered instances. + + + + The ContainerLocking event is called exactly once by the container, allowing a developer to + register types, hook unregistered type resolution events that need to be applied last, or see + who is responsible for locking the container. + + + A registered event handler delegate is allowed to make a call that locks the container, e.g. + calling Container.GetInstance; this will not cause any new ContainerLocking event to + be raised. Doing so, however, is not advised, as that might cause any following executed handlers + to break, in case they require an unlocked container. + + + + + + Gets the container to which this ContainerOptions instance belongs to. + + The current Container. + + + + Gets or sets a value indicating whether the container allows overriding registrations. The default + is false. + + The value indicating whether the container allows overriding registrations. + + + + Gets or sets a value indicating whether the container should suppress checking for lifestyle + mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default + is false. This setting will have no effect when is true. + + The value indicating whether the container should suppress checking for lifestyle + mismatches. + + + + + Gets or sets a value indicating whether the container should use a loosened (i.e. less strict) + behavior for detecting lifestyle mismatches (see: https://simpleinjector.org/dialm). In short, + when is set to true + dependencies are allowed to be injected into + components. When disabled, a warning would be given in that case. + + + Simple Injector allows custom lifestyles to be created and this loosened behavior works on custom + lifestyles as well. The loosened behavior will ignore any lifestyle mismatch checks on any + component with a lifestyle that has a that is equal or shorter than + the length of . + + + + + + Gets or sets a value indicating whether the container should automatically trigger verification + and diagnostics of its configuration when the first service is resolved (e.g. the first call to + GetInstance). The behavior is identical to calling Verify() + manually. The default is false. + + The value indicating whether the container should automatically trigger verification. + + + Gets or sets a value indicating whether. + This method is deprecated. Changing its value will have no effect. + The value indicating whether the container will return an empty collection. + + + + Gets or sets a value indicating whether all the containers in the current AppDomain should throw + exceptions that contain fully qualified type name. The default is false which means + the type's namespace is omitted. + + The value indicating whether exception message should emit full type names. + + + + Gets or sets a value indicating whether the container should resolve unregistered concrete types. + The default value is true. Consider changing the value to false to prevent + accidental creation of types you haven't registered explicitly. + + The value indicating whether the container should resolve unregistered concrete types. + + Thrown when this container instance is locked and can not be altered. + + + + + Gets or sets the constructor resolution behavior. By default, the container only supports types + that have a single public constructor. + + The constructor resolution behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + Gets or sets the dependency injection behavior. + The constructor injection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the property selection behavior. The container's default behavior is to do no + property injection. + + The property selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the lifestyle selection behavior. The container's default behavior is to make + registrations using the lifestyle. + The lifestyle selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default lifestyle that the container will use when a registration is + made when no lifestyle is supplied. + The default lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default scoped lifestyle that the container should use when a registration is + made using Lifestyle.Scoped. + The default scoped lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. + By default, this value is true for the first few containers that are created in an AppDomain + and false for all other containers. You can set this value explicitly to false + to prevent the use of dynamic assemblies or you can set this value explicitly to true to + force more container instances to use dynamic assemblies. Note that creating an infinite number + of Container instances (for instance one per web request) + with this property set to true will result in a memory leak; dynamic assemblies take up + memory and will only be unloaded when the AppDomain is unloaded. + + A boolean indicating whether the container should use a dynamic assembly for compilation. + + + + + Registers an delegate that allows intercepting calls to + GetInstance and + . + + + If multiple registered instances must be applied, they will be + applied/wrapped in the order of registration, i.e. the first registered interceptor will call the + original instance producer delegate, the second interceptor will call the first interceptor, etc. + The last registered interceptor will become the outermost method in the chain and will be called + first. + + The delegate to register. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + The following example shows the usage of the method: + + { + object instance = producer.Invoke(); + Console.WriteLine(instance.GetType().Name + " resolved for " + context.Producer.ServiceType.Name); + return instance; + }, + context => context.Producer.ServiceType.Name.EndsWith("Controller")); + + container.Register(); + container.Register(); + + // This line will write "HomeViewModel resolved for IHomeViewModel" to the console. + container.GetInstance(); + ]]> + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The scope that manages the lifetime of singletons and other container-controlled instances. + + + + + Allows registering an delegate that will be called when the container + gets disposed, but before the container disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to + Dispose, the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Adds the to the list of items that will get disposed when the + container gets disposed. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. Instead, + provides an atomic operation for getting and setting an item. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either of the arguments is a null reference (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances + are returned in order of creation/registration. When + Container.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be + disposed in opposite order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + + An instance of this type can be injected into constructors of decorator classes that are registered + using RegisterDecorator. This type contains + contextual information about the applied decoration and it allows users to examine the given instance + to make runtime decisions. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterDecorator + overload that takes this delegate. This type contains information about the decoration that is about + to be applied and it allows users to examine the given instance to see whether the decorator should + be applied or not. + + + Please see the + RegisterDecorator + method for more information. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + Hooks into the building process and adds a decorator if needed. + + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diaal. + + + + Gets the lifestyles that causes the registrations to be conflicting. + instances. + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the registration that caused this warning. + An . + + + + Gets the list of registrations that are in conflict with the . + + A list of instances. + + + + Entry point for doing diagnostic analysis on instances. + + + The following example shows the usage of the Analyzer class: + + + + + + Analyzes the supplied instance. + + The container instance to analyze. + A collection of sub types that describe the diagnostic + warnings and messages. + + + + Diagnostic result for a warning about a concrete type that was not registered explicitly and was not + resolved using unregistered type resolution, but was created by the container using the transient + lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + Gets a collection of instances that describe all + container-registered dependencies for the given component. + List of objects. + + + + A hierarchical group of . + + + + + Gets the base that describes the service types of its + . The value often be either (in case this is a + root group) or a partial generic type to allow hierarchical grouping of a large number of related + generic types. + + The . + + + Gets the friendly name of the group. + The name. + + + Gets the description of the group. + The description. + + + Gets the diagnostic type of all grouped instances. + The . + + + Gets the parent or null (Nothing in VB) when this is the + root group. + The . + + + Gets the collection of child s. + A collection of elements. + + + Gets the collection of instances. + /// A collection of elements. + + + + Base class for types that hold information about a single diagnostic message or warning for a + particular type or part of the configuration. + + + + Gets the severity of this result. + The . + + + Gets the diagnostic type of this result. + The . + + + Gets the service type to which this warning is related. + A . + + + Gets the description of the diagnostic result. + A with the description. + + + Gets the documentation URL of the diagnostic result. + A with the URL. + + + Gets the hierarchical group to which this diagnostic result belongs. + The . + + + + Specifies the list of severity levels that diagnostic results can have. + + + + Information messages and tips about the configuration. + + + Warning messages that are likely to cause problems in your application. + + + + Specifies the list of diagnostic types that are currently supported by the diagnostic + . Note that new diagnostic types might be added in future versions. + For more information, please read the + Diagnosing your configuration using the Diagnostic + Services wiki documentation. + + + + + Diagnostic type that warns about + a concrete type that was not registered explicitly and was not resolved using unregistered type + resolution, but was created by the container using the transient lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + + Diagnostic type that warns when a + component depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + + Diagnostic type that warns when a + component depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + + Diagnostic type that warns when a component depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + + Diagnostic type that warns when multiple registrations map to the same component and + lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + + Diagnostic type that warns when a component is registered as transient, while implementing + . + For more information, see: https://simpleinjector.org/diadt. + + + + + Diagnostic type that warns when multiple registrations exist that map to the same component but + with different lifestyles, which will cause the component to be cached in different -possibly + incompatible- ways. + For more information, see: https://simpleinjector.org/diaal. + + + + + Diagnostic result for a warning about a component that is registered as transient, but implements + . + For more information, see: https://simpleinjector.org/diadt. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result for a warning about a + component that depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result that warns about a + component that depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + Gets the instance that describes the current relationship between the checked component + and the short-circuited dependency. + The . + + + + Gets the collection of registrations that have the component's current dependency as + implementation type, but have a lifestyle that is different than the current dependency. + + A collection of instances. + + + + Diagnostic result that warns about a component that depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + Gets the created type. + A . + + + Gets the list of registrations that are dependencies of the . + A collection of instances. + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + Gets the lifestyle on which instances are torn. + A . + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the list of registrations that are affected by this warning. + A list of instances. + + + + Thrown by the container in case of a diagnostic error. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message. + + The list of errors. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Initializes a new instance of the class with serialized data. + + + The that holds the serialized object data about the exception + being thrown. + + + The that contains contextual information about the source or + destination. + + + The parameter is null. + + + The class name is null or hresult is zero (0). + + + + Gets the list of instances. + A list of instances. + + + + Provides data for and interaction with the + ExpressionBuilding event of + the . An observer can change the + property to change the component that is + currently being built. + + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + + Gets the type that is known to be returned by the + Expression (most often the implementation + type used in the Register call). This type will be a derivative of + RegisteredServiceType (or + or RegisteredServiceType itself). If the Expression is changed, the new expression + must also return an instance of type KnownImplementationType or a sub type. + This information must be described in the new Expression. + + A . + + + Gets the lifestyle for the component that is currently being built. + The . + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Provides data for and interaction with the + ExpressionBuilt event of + the . An observer can change the + property to change the component that is currently + being built. + + + + Initializes a new instance of the class. + Type of the registered service. + The registered expression. + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + Gets or sets the current lifestyle of the registration. + The original lifestyle of the registration. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Helper methods for the container. + + + + + Contains contextual information about the direct consumer for which the given dependency is injected + into. + + + + Initializes a new instance of the class. + The constructor parameter for the created component. + + + Initializes a new instance of the class. + The implementation type of the consumer of the component that should be created. + The property for the created component. + + + Gets the service type of the consumer of the component that should be created. + The closed generic service type. + + + Gets the implementation type of the consumer of the component that should be created. + The implementation type. + + + + Gets the information about the consumer's target in which the dependency is injected. The target + can be either a property or a constructor parameter. + + The for this context. + + + + + + + + + + + + + + + + Discovers the attributes of the code element (a property or parameter) where a dependency will be + injected into, and provides access to its meta data. + + + + + Gets the constructor argument of the consumer of the component where the dependency will be + injected into. The property can return null. + + The or null when the dependency is injected into a property. + + + + + Gets the property of the consumer of the component where the dependency will be injected into. + The property can return null. + + The or null when the dependency is injected into a constructor + argument instead. + + + Gets the name of the target. + A string containing the name of the target. + + + Gets the type of the target. + A containing the type of the target. + + + Gets the member of the target. This is either the constructor of the parameter, or in + case the target is a property, the property itself will be returned. + A containing the type of the target. + + + + Returns an array of all of the custom attributes defined on either the or + the , excluding named attributes, or an empty array if there are no custom + attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + There is more than one attribute of type attributeType + defined on this member. + + + + Returns an array of custom attributes defined on either the or + the , identified by type, or an empty array if there are no custom + attributes of that type. + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + Thrown when attributeType is null. + + + + Indicates whether one or more instance of attributeType is defined on this either the + or the . + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + true if the attributeType is defined on this member; false otherwise. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The parameter to inspect. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The parameter to inspect.The parameter to inspect. + True to inspect the ancestors of element; otherwise, false. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The type of attribute to search for. + A custom attribute that matches attributeType, or null if no such attribute is found. + + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A custom attribute matching attributeType, or null if no such attribute is found. + + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter. + + The type of attribute to search for. + A collection of the custom attributes that are applied to element and that match T, or + an empty collection if no such attributes exist. + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter, and optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A collection of the custom attributes that are applied to element and that match T, or an + empty collection if no such attributes exist. + + + + + + + + + + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + GetCurrentRegistrations() or + GetRegistration(Type, bool). + + + The Register method overloads create InstanceProducer instances internally, but + InstanceProducers can be created manually to implement special scenarios. An + InstanceProducer wraps instance. The Registration builds an + that describes the intend to create the instance according to a certain + lifestyle. The InstanceProducer on the other hand transforms this Expression to a + delegate and allows the actual instance to be created. A Registration itself can't create any + instance. The InsanceProducer allows intercepting created instances by hooking onto the + Container.ExpressionBuilt event. The + RegisterDecorator methods for + instance work by hooking onto the ExpressionBuilt event and allow wrapping the returned instance + with a decorator. + + + The following example shows the creation of two different InstanceProducer instances that wrap + the same Registration instance. Since the Registration is created using the + Singleton lifestyle, both producers will return + the same instance. The InstanceProducer for the Interface1 however, will wrap that + instance in a (transient) Interface1Decorator. + (container); + + var producer1 = new InstanceProducer(typeof(Interface1), registration); + var producer2 = new InstanceProducer(typeof(Interface2), registration); + + container.RegisterDecorator(typeof(Interface1), typeof(Interface1Decorator)); + + var instance1 = (Interface1)producer1.GetInstance(); + var instance2 = (Interface2)producer2.GetInstance(); + + Assert.IsInstanceOfType(instance1, typeof(Interface1Decorator)); + Assert.IsInstanceOfType(instance2, typeof(ServiceImpl)); + + Assert.AreSame(((Interface1Decorator)instance1).DecoratedInstance, instance2); + ]]> + + + + Initializes a new instance of the class. + The service type for which this instance is created. + The . + + + + Gets the for this registration. The returned lifestyle can differ from the + lifestyle that is used during the registration. This can happen for instance when the registration + is changed by an ExpressionBuilt + registration or gets decorated. + + The for this registration. + + + Gets the service type for which this producer produces instances. + A instance. + + + Gets the instance for this instance. + The . + + + + Creates a new based on the given + and where the will be used as-is; + no interception (using ExpressionBuilt) such as + decorators will be applied. + + The service type for which this instance is created. + The expression that describes the instance to be produced. + The instance for this registration. + A new that describes the expression. + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + + Builds an expression that expresses the intent to get an instance by the current producer. A call + to this method locks the container. New registrations can't be made after a call to this method. + + An Expression. + + + + Gets the collection of relationships for this instance that the container knows about. + This includes relationships between the registered type and its dependencies and relationships + between applied decorators and their dependencies. Note that types that are not newed up by the + container and properties that are injected inside a custom delegate that is registered using the + RegisterInitializer + method are unknown to the container and are not returned from this method. + Also note that this method will return an empty collection when called before the + registered type is requested from the container (or before + Verify is called). + + An array of instances. + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + The various visualization options for building a string representation of + the object graph. + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + Thrown when options is null. + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + or . + + The service type. + + + Initializes a new instance of the class. + The . + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + A map containing a generic argument (such as T) and the concrete type (such as Int32) that it + represents. + + + + Implements equality. Needed for doing LINQ distinct operations. + The other to compare to. + True or false. + + + Overrides the default hash code. Needed for doing LINQ distinct operations. + An 32 bit integer. + + + + Container controlled collections can be supplied with both Type objects or direct Registration + instances. + + + + + Gets a message that describes the current exception. + + T + he error message that explains the reason for the exception, or an empty string(""). + + + + + Allows verifying whether a given type has a direct or indirect dependency on itself. Verifying is done + by preventing recursive calls to an InstanceProducer. A CyclicDependencyValidator instance checks a + single InstanceProducer and therefore a single service type. + + + + + Allows retrieving the concrete types of the generic type arguments of that must be used to create a + closed generic implementation of a given open generic implementation, based on on the concrete + arguments of the given closed base type. + + + + + Helper class for building closed generic type for a given open generic type and a closed generic base. + + + + Result of the GenericTypeBuilder. + + + + A open generic type with the concrete arguments that can be used to create a closed generic type. + + + + + Allows validating an ArgumentMapping. + + + + + Factory for the creation of a delegate that applies caching to the supplied + . + + A factory for creating new instances. + A factory that returns cached instances. + + + + Instances returned from the container can be cached. The contains several + overloads of the Register method that take a Lifestyle instance as argument to define + how returned instances should be cached. The core library contains two lifestyles out of the box. By + supplying Lifestyle.Transient, the registered instance is not + cached; a new instance is returned every time it is requested or injected. By supplying + Lifestyle.Singleton instances can be cached indefinitely; only + a single instance of the registered component will be returned by that container instance. Other + lifestyles are defined in integration and extension packages. The + CreateCustom method allows defining a custom lifestyle and + the CreateHybrid method + allows creating a lifestyle that mixes multiple other lifestyles. + + + This type is abstract and can be overridden to implement a custom lifestyle. + + + + + The lifestyle instance that doesn't cache instances. A new instance of the specified + component is created every time the registered service is requested or injected. + + + The following example registers the SomeServiceImpl implementation for the + ISomeService service type using the Transient lifestyle: + (Lifestyle.Transient); + ]]> + Note that Transient is the default lifestyle, the previous registration can be reduced to + the following: + (); + ]]> + + + + + + The lifestyle that caches components according to the lifetime of the container's configured + scoped lifestyle. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the active scope gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Scoped lifestyle: + (Lifestyle.Scoped); + ]]> + + + + + + The lifestyle that caches components during the lifetime of the instance + and guarantees that only a single instance of that component is created for that instance. Since + general use is to create a single Container instance for the lifetime of the application / + AppDomain, this would mean that only a single instance of that component would exist during the + lifetime of the application. In a multi-threaded applications, implementations registered using + this lifestyle must be thread-safe. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the container gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Singleton lifestyle: + (Lifestyle.Singleton); + ]]> + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the user friendly name of this lifestyle. + The user friendly name of this lifestyle. + + + + Gets the length of the lifestyle. Implementers must implement this property. The diagnostic + services use this value to compare lifestyles with each other to determine lifestyle + misconfigurations. + + The representing the length of this lifestyle. + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The lifestyle to use when + returns true. + The lifestyle to use when + returns false. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + lifestyle.GetCurrentScope(container) != null, + lifestyle, + Lifestyle.Transient); + + var mixedScopeLifestyle = Lifestyle.CreateHybrid( + () => HttpContext.Current != null, + new WebRequestLifestyle(), + mixedLifetimeTransientLifestyle); + ]]> + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Lifetime Scope and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The scoped lifestyle to use when + returns true. + The scoped lifestyle to use when + returns false. + A new scoped hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + + + + Creates a custom lifestyle using the supplied delegate. + + + The supplied will be called just once per registered + service. The supplied will be called by the framework + when the type is resolved for the first time, and the framework will supply the factory with a + Func<object> for creating new (transient) instances of that type (that might + have been intercepted and + initializers might have been applied). + It is the job of the to return a Func<object> + that applies the proper caching. The Func<object> that is returned by the + will be stored for that registration (every + registration will store its own Func<object> delegate) and this delegate will be + called every time the service is resolved (by calling + container.GetInstance<TService> or when that service is injected into another + type). + + The name of the lifestyle to create. The name is used to display the lifestyle + in the debugger. + A factory delegate that takes a Func<object> delegate + that will produce a transient instance and returns a delegate that returns cached instances. + A new . + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is an empty string. + + The following example shows the creation of a lifestyle that caches registered instances for 10 + minutes: + + { + TimeSpan timeout = TimeSpan.FromMinutes(10); + var syncRoot = new object(); + var expirationTime = DateTime.MinValue; + object instance = null; + + // If the application has multiple registrations using this lifestyle, each registration + // will get its own Func delegate (created here) and therefore get its own set + // of variables as defined above. + return () => + { + lock (syncRoot) + { + if (expirationTime < DateTime.UtcNow) + { + instance = instanceCreator(); + expirationTime = DateTime.UtcNow.Add(timeout); + } + + return instance; + } + }; + }); + + var container = new Container(); + + // We can reuse the created lifestyle for multiple registrations. + container.Register(customLifestyle); + container.Register(customLifestyle); + ]]> + + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified caching as + specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances instance using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + + The concrete type that will be registered. + The instance for which a + must be created. + A new or cached instance. + Thrown when is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + This method might fail when run in a partial trust sandbox when + is an internal type. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The delegate that will be responsible for creating new instances. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. An execution context scope flows with the logical execution context. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ExecutionContextScopeLifestyle class: + (Lifestyle.Scoped); + + using (AsyncScopedLifestyle.BeginScope(container)) + { + var instance1 = container.GetInstance(); + // ... + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + This lifestyle can be used to implement ambient context-less scoping in Simple Injector. This lifestyle + can be set as DefaultScopedLifestyle and later used via Lifestyle.Scoped to register scoped instances, + while instances are resolved via Scope.GetInstance. + + + + + Forwards CreateRegistration calls to the lifestyle that is returned from the registered + container.Options.LifestyleSelectionBehavior. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. A scope is thread-specific, each thread should define its own scope. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ThreadScopedLifestyle class: + (Lifestyle.Scoped); + + using (container.BeginLifetimeScope()) + { + var instance1 = container.GetInstance(); + + // This call will return the same instance. + var instance2 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance1, instance2)); + + // Create a nested scope. + using (container.BeginLifetimeScope()) + { + // A nested scope gets its own instance. + var instance3 = container.GetInstance(); + + Assert.IsFalse(object.ReferenceEquals(instance1, instance3)); + + // This call will return the same instance. + var instance4 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance3, instance4)); + } + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterConditional + overload that takes this delegate. This type contains information about the open generic service that + is about to be created and it allows the user to examine the given instance to decide whether this + implementation should be created or not. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the closed generic implementation type that will be created by the container. + + The implementation type. + + + Gets a value indicating whether a previous Register registration has already + been applied for the given . + The indication whether the event has been handled. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + A Registration implements lifestyle based caching for a single service and allows building an + that describes the creation of the service. + + + implementations create a new Registration instance for each registered + service type. s returned from the + BuildExpression method can be + intercepted by any event registered with , have + initializers + applied, and the caching particular to its lifestyle have been applied. Interception using the + Container.ExpressionBuilt will not + be applied in the Registration, but will be applied in . + + See the documentation for an example. + + + + + Initializes a new instance of the class. + + The this that created this registration. + The instance for this registration. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Gets the type that this instance will create. + The type that this instance will create. + + + Gets the this that created this registration. + The this that created this registration. + + + Gets the instance for this registration. + The instance for this registration. + + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. The default is false. Having a value of false, does not force an + instance to be disposed of, though; Transient instances, for instance, will never be disposed of. + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. + + + + Gets or sets a value indicating whether this registration object contains a user + supplied instanceCreator factory delegate. + + + + Builds a new with the correct caching (according to the specifications of + its ) applied. + + An . + + + + Gets the list of instances. Note that the list is only available + after calling . + + A new array containing the instances. + + + + Initializes an already created instance and applies properties and initializers to that instance. + + + This method is especially useful in integration scenarios where the given platform is in control + of creating certain types. By passing the instance created by the platform to this method, the + container is still able to apply any properties (as defined using a custom + ) and by applying any initializers. + + The instance to initialize. + Thrown when is a null + reference (Nothing in VB). + Thrown when the supplied is not + of type . + + + + Suppressing the supplied for the given registration. + + The . + The justification of why the warning must be suppressed. + Thrown when is a null + reference. + Thrown when either is an + empty string or when is not a valid value of . + + + + + Builds a delegate for the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers + that are applicable to the given (if any). + + The interface or base type that can be used to retrieve instances. + + The delegate supplied by the user that allows building or creating new instances. + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds a delegate for the creation of . + The returned might be intercepted by a + Container.ExpressionBuilding event, + and the creation of the will have been wrapped with a + delegate that executes the registered + initializers + that are applicable to the given (if any). + + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds an that describes the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers that are + applicable to the given (if any). + + + The interface or base type that can be used to retrieve instances. + + + The delegate supplied by the user that allows building or creating new instances. + An . + Thrown when one of the arguments is a null reference. + + + + + Builds an that describes the creation of . + The returned might be intercepted + by a Container.ExpressionBuilding + event, and the creation of the will have been wrapped with + a delegate that executes the registered + initializers that are applicable + to the InstanceProducer's ServiceType (if any). + + An . + Thrown when one of the arguments is a null reference. + + + Implements a cache for implementations. + + is thread-safe can be used over multiple threads concurrently, but note that the + cached instances might not be thread-safe. + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The container instance that the scope belongs to. + + + Gets the container instance that this scope belongs to. + The instance. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Adds the to the list of items that will get disposed when the + scope ends. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances are returned + in order of creation/registration. When Scope.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be disposed in opposite + order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + Releases all instances that are cached by the object. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType -or- null if there is no service object of type + . + + + + Releases all instances that are cached by the object. + + False when only unmanaged resources should be released. + + + + Base class for scoped lifestyles. A scoped lifestyle caches instances for the duration of an implicitly + or explicitly defined scope. Such scope can be an (implicitly defined) web request or an explicitly + defined Lifetime Scope. The lifetime of instances registered with a scoped lifestyle is always equal + or bigger than one-instance-per-object-graph. In other words, a call to GetInstance() will never create + more than one instance of such registered type. + + + + + Gets the scoped lifestyle that allows Scoped registrations to be resolved direclty from the + by calling . This allows multiple + scopes to be active and overlap within the same logical context, such as a single thread, or an + asynchronous context. + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Signals the lifestyle whether instances should be + disposed or not. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the length of the lifestyle. + The representing the length of this lifestyle. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The instance. + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Adds the to the list of items that will get disposed when the + scope ends. + + The instance. + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method should never return null. + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + + By default, this method calls the method and invokes the + returned delegate. This method can be overridden to provide an optimized way for getting the + current scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + Internal helper for string resources. + + + + Contains contextual information for creating an implementation type. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + Returns a list of base types and interfaces of implementationType that either + equal to serviceType or are closed or partially closed version of serviceType (in case + serviceType itself is generic). + So: + -in case serviceType is non generic, only serviceType will be returned. + -If implementationType is open generic, serviceType will be returned (or a partially closed + version of serviceType is returned). + -If serviceType is generic and implementationType is not, a closed version of serviceType will + be returned. + -If implementationType implements multiple (partially) closed versions of serviceType, all those + (partially) closed versions will be returned. + + The (open generic) service type to match. + The implementationType to search. + A list of types. + + + Useful extensions on . + + + + Builds an easy to read type name. Namespaces will be omitted, and generic types will be displayed + in a C#-like syntax. Ideal for reporting type names in exception messages. + + The type to convert. + A human-readable string representation of that type. + Thrown when the supplied argument is a null reference. + + + + Returns true is there is a closed version of the supplied + that is assignable from the current . This method returns true when either + itself, one of its base classes or one of its implemented interfaces is a + closed version of ; otherwise false. + + The type to check. + The generic type definition to match. + True when type is assignable; otherwise false. + + + + Gets the single closed version of that the current + is assignable from. In case none or multiple matching closed types are + found, and exception is thrown. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + The matching closed type. + Thrown when one of the arguments is a null reference. + Thrown when is not + a generic type or when none of the base classes or implemented interfaces of + are closed-versions of . + Thrown when multiple matching closed generic types + are found. + + + + Gets the list of closed versions of that the current + is assignable from. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + A list of matching closed generic types. + + + + Defines options to control the types returned from the + GetTypesToRegister + method. For a type to be returned, it should match all the conditions described by the class's + properties. In other words, in case the searched assembly contains a generic type, that is both a + decorator and a composite, it will only be returned by GetTypesToRegister in case both + , and + are set to true. + + + + Initializes a new instance of the class. + + + + Gets or sets a value indicating whether decorator types should be included in the result. The default + value of this property is false. A type is considered a decorator if the type's constructor + contains a parameter of the type that exactly matches the serviceType argument, + supplied to the + GetTypesToRegister + method, or when there is a argument where T matches the + serviceType argument. + + A boolean. + + + + Gets or sets a value indicating whether generic type definitions (types that have + Type.IsGenericTypeDefinition + set to true) + should be included in the result. The default value for this property is false. + + A boolean. + + + + Gets or sets a value indicating whether composite types should be included in the result. The default + value of this property is true. A type is considered a composite if the type's constructor + contains a parameter of IEnumerable<T>, ICollection<T>, + IList<T>, IReadOnlyCollection<T>, + IReadOnlyList<T> or T[] (array of T), where T + exactly matches the serviceType argument, supplied to the + GetTypesToRegister + method. + + A boolean. + + + + Provides data for and interaction with the + ResolveUnregisteredType event of + the . An observer can check the + to see whether the unregistered type can be handled. The + method can be called to register a delegate + that allows creation of instances of the unregistered for this and future requests. + + + + Gets the unregistered service type that is currently requested. + The unregistered service type that is currently requested. + + + + Gets a value indicating whether the event represented by this instance has been handled. + This property will return true when has been called on + this instance. + + The indication whether the event has been handled. + + + + Registers a delegate that allows creation of instances of the type + expressed by the for this and future requests. The delegate + will be caches and future requests will directly call that delegate. + + The delegate that allows creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers an that describes the creation of instances of the type + expressed by the for this and future requests. The delegate + will be cached and future requests will directly use that expression or the compiled delegate. + + + NOTE: If possible, use the Register(Registration) overload, + since this allows the analysis services to determine any configuration errors on the lifestyle of + the registration. + + The expression that describes the creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers a that describes the creation of instances of the type + expressed by the for this and future requests. The + registration will be cached and future requests will directly call unon that registration, the + expression that it generates or the delegate that gets compiled from that expression. + + The registration that describes the creation of instances according to + the registration's lifestyle of the type expressed by the . + Thrown when the is a + null reference. + Thrown when the is a + not exactly of type where T equals the . + + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + This enumeration defines in which way the container should run the verification process. + + + + + Specifies that the container performs verification only, which means that it will test whether + all registrations can be constructed by iterating the registrations and letting the container + create at least one instance of each registration. An + will be thrown in case the configuration is invalid. + + + + + Specifies that the container will run diagnostic analysis after the verification succeeded. The + container will diagnose the configuration with a subset of the available diagnostic warnings, that + are most likely an indication of a configuration mistake. A complete set of diagnostic warnings + can be retrieved by calling + Analyzer.Analyze or by viewing the + container in the Visual Studio debugger, after the verification has succeeded. + + + + + Visualization options for providing various information about instances. + + + + + Gets or sets a value indicating whether to include lifestyle information in the visualization. + + The value to include life style information. + + + + Gets or sets a value indicating whether to use fully qualified type names in the visualization. + + The value to use fully qualified type names. + + + diff --git a/packages/SimpleInjector.4.9.1/lib/netstandard1.0/SimpleInjector.dll b/packages/SimpleInjector.4.9.1/lib/netstandard1.0/SimpleInjector.dll new file mode 100644 index 0000000..b259ada Binary files /dev/null and b/packages/SimpleInjector.4.9.1/lib/netstandard1.0/SimpleInjector.dll differ diff --git a/packages/SimpleInjector.4.9.1/lib/netstandard1.0/SimpleInjector.xml b/packages/SimpleInjector.4.9.1/lib/netstandard1.0/SimpleInjector.xml new file mode 100644 index 0000000..1085ddd --- /dev/null +++ b/packages/SimpleInjector.4.9.1/lib/netstandard1.0/SimpleInjector.xml @@ -0,0 +1,6143 @@ + + + + SimpleInjector + + + + + The standard exception thrown when a container has an error in resolving an object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Extension methods for enable advanced scenarios. + + + + + Determines whether the specified container is locked making any new registrations. The container + is automatically locked when GetInstance is called for the + first time. + + The container. + + true if the specified container is locked; otherwise, false. + + Thrown when is null. + + + Determines whether the specified container is currently verifying its configuration. + The container. + true if the specified container is verifying; otherwise, false. + Thrown when is null. + + + + Retrieves an item from the container stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The container. + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Stores an item by the given in the container. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The container. + The key of the item to insert or override. + The actual item. May be null. + Thrown when either or + is a null reference (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The container. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either , + or is a null reference (Nothing in VB). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Common base class for Simple Injector API classes. + + + + + + + + + + + + + Gets the of the current instance. + The instance that represents the exact runtime + type of the current instance. + + + Deprecation extensions. + + + + This interface method has been removed. Please call GetInstanceProducerFor instead. + + The behavior. + The consumer. + Throws an exception. + + + + This interface method has been removed. Please call SelectProperty(PropertyInfo) instead. + + The behavior. + Type of the abstraction that is requested. + The property to check. + True when the property should be injected. + + + + Defines the container's behavior for finding a suitable constructor for the creation of a type. + Set the ConstructorResolutionBehavior + property of the container's property to change the default behavior + of the container. + + + + + Gets the given 's constructor that can be used by the + container to create that instance. + + Type of the implementation to find a suitable constructor for. + + The . This method never returns null. + + Thrown when no suitable constructor could be found. + + + + Defines the container's behavior for building an expression tree for an dependency to inject, based on + the information of the consuming type the dependency is injected into. + Set the ConstructorInjectionBehavior + property of the container's property to change the default behavior + of the container. + + + + Verifies the specified . + Contextual information about the consumer where the built dependency is + injected into. + + Thrown when the type of the target supplied with + the supplied cannot be used for auto wiring. + Thrown when the supplied argument is a null reference. + + + + Gets the for the + Target of the supplied . + + Contextual information about the consumer where the built dependency is + injected into. + The indication whether the method should return null or throw + an exception when the type is not registered. + An that describes the intend of creating that + Target. This method never returns null. + Thrown when the argument is a null reference. + + + + Defines the container's behavior for selecting the lifestyle for a registration in case no lifestyle + is explicitly supplied. + Set the LifestyleSelectionBehavior + property of the container's property to change the default behavior + of the container. By default, when no lifestyle is explicitly supplied, the + Transient lifestyle is used. + + + + Selects the lifestyle based on the supplied type information. + Type of the implementation to that is registered. + The suited for the given type. + Thrown when either one of the arguments is a null reference. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterResolveInterceptor + method that takes this delegate. This type contains contextual information about a resolved type and it + allows the user to examine the given instance to decide whether the + should be applied or not. + + + + + Gets the that is responsible for the initialization of the created + instance. + + The or null (Nothing in VB) when the instance producer is + unknown. + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterInitializer + overload that takes this delegate. This type contains contextual information about the creation and it + allows the user to examine the given instance to decide whether the instance should be initialized or + not. + + + + + Gets a null reference. This property has been deprecated. + + The null (Nothing in VB). + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + Contains data that can be used to initialize a created instance. This data includes the actual + created and the information about the created instance. + + + + Initializes a new instance of the struct. + The that contains contextual information + about the created instance. + The created instance. + + + Gets the with contextual information about the + created instance. + The . + + + Gets the created instance. + The created instance. + + + + + + + + + + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + True if a and b are equal; otherwise, false. + + + + Indicates whether the values of two specified objects are + not equal. + + The first object to compare. + The second object to compare. + True if a and b are not equal; otherwise, false. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + + + Initializes a new instance of the struct. + The scope factory. + The container. + + + Gets the lazily initialized Scope of the current LazyScope instance. + The current Scope or null. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + Implementation type. + + + + Initializes a new instance of the + struct. + The registration. + + + + Gets the lazily initialized instance for the of the current LazyScopedRegistration. + + The scope that is used to retrieve the instance. + The cached instance. + + + + Defines the container's behavior for selecting properties to inject during the creation of a type. + Set the PropertySelectionBehavior + property of the container's property to change the default behavior + of the container. By default, no properties will be injected by the container. + + + + + Determines whether a property should be injected by the container upon creation of its type. + + + The type being created for which the property should be injected. Note that this might a + different type than the type on which the property is declared (which might be a base class). + The property to check. + True when the property should be injected. + + + + A known relationship defines a relationship between two types. The Diagnostics Debug View uses this + information to spot possible misconfigurations. + + + + Initializes a new instance of the class. + The implementation type of the parent type. + The lifestyle of the parent type. + The type that the parent depends on (it is injected into the parent). + + + Gets the implementation type of the parent type of the relationship. + The implementation type of the parent type of the relationship. + + + Gets the lifestyle of the parent type of the relationship. + The lifestyle of the parent type of the relationship. + + + Gets the type that the parent depends on (it is injected into the parent). + The type that the parent depends on. + + + + + + + + + + + + + The container. Create an instance of this type for registration of dependencies. + + + + Thread-safety: + Resolving instances can be done safely from multiple threads concurrently, but registration needs to + be done from one single thread. + + + It is therefore safe to call , , + GetService, and + and anything related to resolving instances from multiple thread + concurrently. It is however unsafe to call + RegisterXXX, + , , , + or anything related to registering from multiple threads concurrently. + + + Methods for batch registration. + Methods for registration of collections. + Methods for conditional registrations. + + These conditional registration methods lack a Func{PredicateContext, TService} predicate + method. This is deliberate, because would force the factory to be registered as transient, forcing + the whole parent structure to become transient as well. Besides this, it would blind the diagnostic + system, because it will stop at the delegate, instead of being able to analyze the object graph as + a whole. + + Methods for registration. + Methods for registration of decorators. + Methods for resolving instances. + Methods for verifying the container. + + + Initializes a new instance of the class. + + + Gets the container options. + The instance for this container. + + + Gets the container scope that that manages the lifetime of singletons and other + container-controlled instances. Use this property to register actions that need to be called + and instances that need to be disposed when the container gets disposed. + The instance for this container. + + + + Gets a value indicating whether the container is currently being verified on the current thread. + + True in case the container is currently being verified on the current thread; otherwise + false. + + + + Gets the intermediate lifestyle that forwards CreateRegistration calls to the lifestyle that is + returned from the registered container.Options.LifestyleSelectionBehavior. + + + + + Returns an array with the current registrations. This list contains all explicitly registered + types, and all implicitly registered instances. Implicit registrations are all concrete + unregistered types that have been requested, all types that have been resolved using + unregistered type resolution (using the event), and + requested unregistered collections. Note that the result of this method may change over time, + because of these implicit registrations. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + + + + Returns an array with the current registrations for root objects. Root objects are registrations + that are in the root of the object graph, meaning that no other registration is depending on it. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + This list contains the root objects of all explicitly registered types, and all implicitly + registered instances. Implicit registrations are all concrete unregistered types that have been + requested, all types that have been resolved using unregistered type resolution (using the + event), and requested unregistered collections. Note that + the result of this method may change over time, because of these implicit registrations. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + Thrown when this method is called before + has been successfully called. + + + Releases all instances that are cached by the object. + + + Prevents any new registrations to be made to the container. + + + Releases all instances that are cached by the object. + True for a normal dispose operation; false to finalize the handle. + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + An assembly that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the transient lifestyle. + + The definition of the open generic type. + A list types to be registered. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the given . + + The definition of the open generic type. + A list types to be registered. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + assemblies = new[] { typeof(ILogger).Assembly }; + var types = container.GetTypesToRegister(assemblies) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ( + typeof(ILogger).Assembly, + typeof(FileLogger).Assembly) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Container.Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete types that are located in the supplied + and implement or inherit from the supplied and match the specified + . can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var options = new TypesToRegisterOptions { IncludeGenericTypeDefinitions: true }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies, options) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + The options. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Registers a dynamic (container-uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + + The container-uncontrolled collection to register. + + + Thrown when this container instance is locked and can not be altered, or when a + for has already + been registered. + + + Thrown when is a null reference. + + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when and + are not a generic type or when + is a partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of the type returned from + will be returned every time a + is requested and where the supplied + returns true. The instance is cached according to the supplied + . Both the and + will only be evaluated a finite number of times; + they unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + A factory that allows building Type objects that define the + implementation type to inject, based on the given contextual information. The delegate is allowed + to return (partially) open-generic types. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the registration can be applied for + the requested service type. This predicate can be used to build a fallback mechanism where + multiple registrations for the same service type are made. + Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is a + partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + is requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is open generic or + is not assignable to . + + Thrown when this container instance is locked and can not be altered. + + + + + Occurs when an instance of a type is requested that has not been registered explicitly, allowing + resolution of unregistered types before the container tries to create the type. + + + + The event is called by the container every time an + unregistered type is requested for the first time, allowing a developer to do unregistered type + resolution. By calling the + Register method on the + , a , or + delegate can be registered allowing the container to retrieve + instances of the requested type. This registration is cached and it prevents the + ResolveUnregisteredType event from being called again for the same type. + + + When no registered event handled the registration of an unregistered type, the container will try + to create the type when this type is either concrete or is the + interface. Concrete types will be registered with the Transient + lifestyle and registrations will return an empty collection. When no + even handled the registration and the container could not create it, an exception is thrown. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once. While the calls to for a given type + are finite (and will in most cases happen just once), a container can call the delegate multiple + times and make parallel calls to the delegate. You must make sure that the code can be called + multiple times and is thread-safe. + + + + The following example shows the usage of the event: + + { + void Validate(T instance); + } + + // Implementation of the null object pattern. + public class EmptyValidator : IValidator + { + public void Validate(T instance) + { + // Does nothing. + } + } + + [TestMethod] + public void TestResolveUnregisteredType() + { + // Arrange + var container = new Container(); + + // Register an EmptyValidator to be returned when a IValidator is requested: + container.ResolveUnregisteredType += (sender, e) => + { + if (e.UnregisteredServiceType.IsGenericType && + e.UnregisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var validatorType = typeof(EmptyValidator<>).MakeGenericType( + e.UnregisteredServiceType.GetGenericArguments()); + + // Register the instance as singleton. + e.Register(Lifestyle.Singleton.CreateRegistration(validatorType, container)); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(EmptyValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(EmptyValidator)); + } + ]]> + + The example above registers a delegate that is raised every time an unregistered type is requested + from the container. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will request the container for a concrete EmptyValidator<T> implementation that + implements the given + UnregisteredServiceType, and + registers a delegate that will return this created instance. The e.Register call + registers the method in the container, preventing the from + being called again for the exact same service type, preventing any performance penalties. + + + Please note that given example is just an uhhmm... example. In the case of the example the + EmptyValidator<T> can be better registered using of the built-in + Register methods instead. These methods take + care of any given generic type constraint and allow the implementation to be integrated into the + container's pipeline, which allows it to be intercepted using the + event and allow any registered initializers to be + applied. + + + + + + Occurs after the creation of the of a registered type is complete (the + lifestyle has been applied), allowing the created to be wrapped, + changed, or replaced. Multiple delegates may handle the same service type. + + + + The ExpressionBuilt event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilt event, can change the + property on the + , which allows changing the way the type is constructed. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to for a + given type are finite (and will in most cases happen just once), a container can call the delegate + multiple times and make parallel calls to the delegate. You must make sure that the code can be + called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilt event: + + { + void Validate(T instance); + } + + public interface ILogger + { + void Write(string message); + } + + // Implementation of the decorator pattern. + public class MonitoringValidator : IValidator + { + private readonly IValidator validator; + private readonly ILogger logger; + + public MonitoringValidator(IValidator validator, ILogger logger) + { + this.validator = validator; + this.logger = logger; + } + + public void Validate(T instance) + { + this.logger.Write("Validating " + typeof(T).Name); + this.validator.Validate(instance); + this.logger.Write("Validated " + typeof(T).Name); + } + } + + [TestMethod] + public void TestExpressionBuilt() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + container.Register, OrderValidator>(); + container.Register, CustomerValidator>(); + + // Intercept the creation of IValidator instances and wrap them in a MonitoringValidator: + container.ExpressionBuilt += (sender, e) => + { + if (e.RegisteredServiceType.IsGenericType && + e.RegisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var decoratorType = typeof(MonitoringValidator<>) + .MakeGenericType(e.RegisteredServiceType.GetGenericArguments()); + + // Wrap the IValidator in a MonitoringValidator. + e.Expression = Expression.New(decoratorType.GetConstructors()[0], new Expression[] + { + e.Expression, + container.GetRegistration(typeof(ILogger)).BuildExpression(), + }); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(MonitoringValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(MonitoringValidator)); + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will changes the current with a new one that creates + a new MonitoringValidator<T> that takes the current validator (and an ILogger) + as an dependency. + + + Please note that given example is just an uhhmm... example. In the case of the example the + MonitoringValidator<T> is a decorator and instead of manually writing this code that + many limitations, you can use one of the built-in + RegisterDecorator methods instead. + These extension methods take care of any given generic type constraint, allow to register decorators + conditionally and allow the decorator to be integrated into the container's pipeline, which allows + it to be intercepted using the event and allow any registered + initializers to be applied. + + + + + + Occurs directly after the creation of the of a registered type is made, + but before any initializer and lifestyle specific caching + has been applied, allowing the created to be altered. Multiple delegates + may handle the same service type. + + + + The ExpressionBuilding event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilding event, can change the + property on the + , which allows changing the way the type is constructed. + + + The exact type supplied depends on the type of registration. + Registrations that explicitly supply the implementation type (such as + Register<TService, TImplementation>()) + will result in an , while registrations that take a delegate (such as + Register<TService>(Func<TService>)) + will result in an . Singletons that are passed in using their + value (RegisterInstance<TService>(TService)) + will result in an . Note that other ExpressionBuilding + registrations might have changed the + property and might have supplied an of a different type. The order in + which these events are registered might be of importance to you. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to registered ExpressionBuilding + events for a given type are finite (and will in most cases happen just once), a container can + call the delegate multiple times and make parallel calls to the delegate. You must make sure that + the code can be called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilding event: + + { + var expression = e.Expression as NewExpression; + + if (expression != null) + { + var propertiesToInject = + from property in expression.Constructor.DeclaringType.GetProperties() + where property.GetCustomAttributes(typeof(MyInjectPropertyAttribute), true).Any() + let registration = container.GetRegistration(property.PropertyType, true) + select Tuple.Create(property, registration); + + if (propertiesToInject.Any()) + { + Func[], object> injectorDelegate = + (instance, dependencies) => + { + foreach (var dependency in dependencies) + { + dependency.Item1.SetValue(instance, dependency.Item2.GetInstance(), null); + } + + return instance; + }; + + e.Expression = Expression.Convert( + Expression.Invoke( + Expression.Constant(injectorDelegate), + e.Expression, + Expression.Constant(propertiesToInject.ToArray())), + expression.Constructor.DeclaringType); + } + } + }; + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks if the type contains properties that are + decorated with the supplied MyInjectPropertyAttribute. If decorated properties are found, + the given expression is replaced with an expression that injects decorated properties. + + + + + Gets the object that allows access to methods related to registration and creation of collections. + The instance for this container. + + + This property is obsolete. Please use instead. + The instance for this container. + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that an instance of will be returned when it + is requested. The instance is cached according to the supplied . + + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a new instance of will be returned every time a + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers that an instance of will be returned when an + instance of type is requested. The instance is cached according to + the supplied . + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning transient instances of + . The delegate is expected to always return a new instance on + each call. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. This can be an open-generic type. + Thrown when is a null + references (Nothing in VB). + Thrown when represents + a type that can not be created by the container. + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that a new instance of will be returned every time a + is requested. If and + represent the same type, the type is registered by itself. + Open and closed generic types are supported. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when or + are null references (Nothing in VB). + Thrown when is + no sub type from (or the same type). + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that an instance of type will be returned when an + instance of type is requested. The instance is cached according to + the supplied . Open and closed generic types are supported. + + The interface or base type that can be used to retrieve the instances. + This can be an open-generic type. + The concrete type that will be registered. + This can be an open-generic type. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container, when either + or are open generic types, or when + is not assignable from the . + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Registers the specified delegate that allows returning instances of . + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. + The delegate that will be used for creating new instances. + Thrown when either or + are null references (Nothing in VB). + Thrown when represents an + open generic type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use the overload that accepts a delegate. + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton(Type, Func<object>). + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single concrete instance that will be constructed using constructor injection and will + be returned when this instance is requested by type . + This must be thread-safe when working in a multi-threaded + environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when + has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that the same a single instance of type will be + returned every time an type is requested. If + and represent the same + type, the type is registered by itself. must be thread-safe + when working in a multi-threaded environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + + The interface or base type that can be used to retrieve the instances. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows constructing a single instance of + . This delegate will be called at most once during the lifetime of + the application. The returned instance must be thread-safe when working in a multi-threaded + environment. + If the instance returned from implements , + the created instance will get disposed when Container.Dispose + gets called. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating this single + instance. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a + null reference. + + + + Registers that the same instance of type will be returned every + time an instance of type type is requested. If + and represent the same type, the + type is registered by itself. must be thread-safe when working + in a multi-threaded environment. Open and closed generic types are supported. + + The base type or interface to register. + This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from , or when one of them represents an open generic + type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that allows constructing a single + instance. The container will call this delegate at most once during the lifetime of the application. + + The base type or interface to register. + The delegate that will be used for creating that single instance. + Thrown when represents an open + generic type. + Thrown when either or + are null references (Nothing in + VB). + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers an delegate that runs after the creation of instances that + implement or derive from the given . Please note that only instances + that are created by the container (using constructor injection) can be initialized this way. + + The type for which the initializer will be registered. + The delegate that will be called after the instance has been + constructed and before it is returned. + + Thrown when the is a null reference. + + + Thrown when this container instance is locked and can not be altered. + + + Multiple delegates can be registered per + and multiple initializers can be applied on a created instance, + before it is returned. For instance, when registering a + for type , the delegate will be called for every instance created by + the container, which can be nice for debugging purposes. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + The following example shows the usage of the + RegisterInitializer method: + + (); + + // Configuring property injection for types that implement ICommand: + container.RegisterInitializer(command => + { + command.SendAsync = true; + }); + + // Configuring property injection for types that implement CommandBase: + container.RegisterInitializer(command => + { + command.Clock = container.GetInstance(); + }); + + // Act + var command = (ConcreteCommand)container.GetInstance(); + + // Assert + // Because ConcreteCommand implements both ICommand and CommandBase, + // both the initializers will have been executed. + Assert.IsTrue(command.SendAsync); + Assert.IsNotNull(command.Clock); + } + ]]> + + The container does not use the type information of the requested service type, but it uses the + type information of the actual implementation to find all initialized that apply for that + type. This makes it possible to have multiple initializers to be applied on a single returned + instance while keeping performance high. + + + Registered initializers will only be applied to instances that are created by the container self + (using constructor injection). Types that are newed up manually by supplying a + delegate to the container (using the + method) or registered as single instance + (using ) will not trigger initialization. + When initialization of these instances is needed, this must be done manually, as can be seen in + the following example: + commandInitializer = command => + { + initializerCallCount++; + }); + + // Configuring that initializer. + container.RegisterInitializer(commandInitializer); + + container.Register(() => + { + // Create a ConcreteCommand manually: will not be initialized. + var command = new ConcreteCommand("Data Source=.;Initial Catalog=db;"); + + // Run the initializer manually. + commandInitializer(command); + + return command; + }); + + // Act + var command = container.GetInstance(); + + // Assert + // The initializer will only be called once. + Assert.AreEqual(1, initializerCallCount); + } + ]]> + The previous example shows how a manually created instance can still be initialized. Try to + prevent creating types manually, by changing the design of those classes. If possible, create a + single public constructor that only contains dependencies that can be resolved. + + + + + + Registers an delegate that runs after the + creation of instances for which the supplied returns true. Please + note that only instances that are created by the container can be initialized this way. + + The delegate that will be called after the instance has been + constructed and before it is returned. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + Note: The is not guaranteed to be called once per registration; + when a registration's instance is requested for the first time simultaneously over multiple thread, + the predicate might be called multiple times. The caller of this method is responsible of supplying + a predicate that is thread-safe. + + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is ambiguous, + when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Act + IFoo foo = container.GetInstance(); + IBar bar = container.GetInstance(); + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + + In the example above a singleton registration is created for type FooBar and this + registration is added to the container for each interface (IFoo and IBar) that it + implements. Since both services use the same singleton registration, requesting those services + will result in the return of the same (singleton) instance. + + + events are applied to the of the + instance and are therefore applied once. + events on the other hand get applied to the Expression of the . + Since each AddRegistration gets its own instance producer (that wraps the + Registration instance), this means that the ExpressionBuilt events will be + applied for each registered service type. + + + The most practical example of this is the use of decorators using one of the + RegisterDecorator overloads (decorator registration + use the ExpressionBuilt event under the covers). Take a look at the following example: + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Registere a decorator for IBar, but not for IFoo + container.RegisterDecorator(typeof(IBar), typeof(BarDecorator)); + + // Act + var foo = container.GetInstance(); + var decorator = container.GetInstance() as BarDecorator; + var bar = decorator.DecoratedBar; + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + The example shows that the decorator gets applied to IBar but not to IFoo, but that + the decorated IBar is still the same instance as the resolved IFoo instance. + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is not a reference + type, is open generic, is ambiguous, when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . By default, a new + instance will be returned on each request (according the + Transient lifestyle), independently of the lifestyle of the + wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + + Thrown when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type or + where T is . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . Decorators can be applied to both open, closed, and + non-generic service types. By default, a new instance will be + returned on each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + The following example shows the definition of a generic ICommandHandler<T> interface, + a CustomerMovedCommandHandler implementing that interface, and a + ValidatorCommandHandlerDecorator<T> that acts as a decorator for that interface. + + { + void Handle(TCommand command); + } + + public class CustomerMovedCommand + { + [Required] + public int CustomerId { get; set; } + + [Required] + public Address Address { get; set; } + } + + public class CustomerMovedCommandHandler + : ICommandHandler + { + public void Handle(CustomerMovedCommand command) + { + // some logic + } + } + + // Decorator that validates commands before they get executed. + public class ValidatorCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly Container container; + + public ValidatorCommandHandlerDecorator( + ICommandHandler decoratedHandler, + Container container) + { + this.decoratedHandler = decoratedHandler; + this.container = container; + } + + public void Handle(TCommand command) + { + this.Validate(command); + + this.decoratedHandler.Handle(command); + } + + private void Validate(TCommand command) + { + var validationContext = + new ValidationContext(command, this.container, null); + + Validator.ValidateObject(command, validationContext); + } + } + + // Decorator that measures the time it takes to execute a command. + public class MonitoringCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly ILogger logger; + + public MonitoringCommandHandlerDecorator( + ICommandHandler decoratedHandler, + ILogger logger) + { + this.decoratedHandler = decoratedHandler; + this.logger = logger; + } + + public void Handle(TCommand command) + { + var watch = Stopwatch.StartNew(); + + this.decoratedHandler.Handle(command); + + this.logger.Log(string.Format("{0} executed in {1} ms.", + command.GetType().Name, watch.ElapsedMilliseconds)); + } + } + + [TestMethod] + public static void TestRegisterOpenGenericDecorator() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + + // Search the given assembly and register all concrete types that + // implement ICommandHandler. + container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), + typeof(ICommandHandler<>).Assembly); + + // Wrap all ICommandHandler service types with a decorator + // that measures and logs the duration of that handler. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(MonitoringCommandHandlerDecorator<>)); + + // Wrap all ICommandHandler types (in this case it will + // wrap the monitoring decorator), but only if the TCommand contains + // any properties. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(ValidatorCommandHandlerDecorator<>), context => + { + var commandType = context.ServiceType.GetGenericArguments()[0]; + bool mustDecorate = commandType.GetProperties().Any(); + return mustDecorate; + }); + + // Act + var handler = + container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(handler, + typeof(ValidatorCommandHandlerDecorator)); + } + ]]> + + The (possibly open generic) service type that will be wrapped by the + given . + The (possibly the open generic) decorator type that will + be used to wrap the original service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or implement + , when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned when the supplied + returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the decorator type that is returned from is + supplied when the supplied returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the decorator type that is returned by the + supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The types returned from the may be non-generic, + closed-generic, open-generic and even partially-closed generic. The container will try to fill in + the generic parameters based on the resolved service type. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The type returned from may have a constructor with an + argument of type where T is . In this + case, the library will not inject the decorated itself into the + decorator instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + The following is an example of the registration of a decorator through the factory delegate: + , MoveCustomerCommandHandler>(); + + container.RegisterDecorator( + typeof(ICommandHandler<>), + context => typeof(LoggingCommandHandler<,>).MakeGenericType( + typeof(LoggingCommandHandler<,>).GetGenericArguments().First(), + context.ImplementationType), + Lifestyle.Transient, + context => true); + + var handler = container.GetInstance>(); + + Assert.IsInstanceOfType(handler, + typeof(LoggingCommandHandler)); + + ]]> + The code above allows a generic LoggingCommandHandler<TCommand, TImplementation> to + be applied to command handlers, where the second generic argument will be filled in using the + contextual information. + + The definition of the (possibly open generic) service type that will + be wrapped by the decorator type that is returned from . + A factory that allows building Type objects that define the + decorators to inject, based on the given contextual information. The delegate is allowed to return + (partially) open-generic types. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the decorator must be applied to a + service type. + Thrown when one of the arguments is a null reference. + + + + Ensures that the supplied decorator is returned when the supplied + returns true, wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. By default, a new instance will be returned on + each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when does not inherit + from or implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested TService. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested serviceType. + Thrown when there are errors resolving the service instance. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType. -or- null if there is no service object of type + . + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + An or null (Nothing in VB). + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned, or an exception is throw when + is set to true. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + The indication whether the method should return null or throw + an exception when the type is not registered. + An or null (Nothing in VB). + + + + Verifies and diagnoses this Container instance. This method will call all registered + delegates, iterate registered collections and throws an exception if there was an error. + + Thrown when the registration of instances was + invalid. + + + + Verifies the Container. This method will call all registered delegates, + iterate registered collections and throws an exception if there was an error. + + Specifies how the container should verify its configuration. + Thrown when the registration of instances was + invalid. + Thrown in case there are diagnostic errors and + the option is supplied. + Thrown when has an invalid value. + + + + Contains methods for registering and creating collections in the . + + + + + Gets the for this instance. + + The for this instance. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new to a collection of registrations for the given + . Calls to Append can both preceed and follow a call to one + of the Container.Collections.Register + overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + Thrown when the is ambiguous. + + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + The lifestyle that specifies how the returned instance will be cached. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends the specified delegate to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The element type of the collections to register. + The instance to register. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + TThe element type of the collections to register. + The instance to register. + Thrown when the is ambiguous, or + does not implement . + + Thrown when either or + are null references. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + The container-uncontrolled collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Provides data for and interaction with the + ContainerLocking event of + the . + + + + + Delegate that allows intercepting calls to and + . + + Contextual information about the to be created object. + A delegate that produces the actual instance according to its + lifestyle settings. + The instance that is returned from or an intercepted instance. + + + Configuration options for the Container. + + The following example shows the typical usage of the ContainerOptions class. + (); + + // Use of ContainerOptions class here. + container.Options.AllowOverridingRegistrations = true; + + // Replaces the previous registration of ITimeProvider + container.Register(); + ]]> + + + + + Occurs just before the container is about to be locked, giving the developer a last change to + interact and change the unlocked container before it is sealed for further modifications. Locking + typically occurs by a call to Container.GetInstance, Container.Verify, or any other + method that causes the construction and resolution of registered instances. + + + + The ContainerLocking event is called exactly once by the container, allowing a developer to + register types, hook unregistered type resolution events that need to be applied last, or see + who is responsible for locking the container. + + + A registered event handler delegate is allowed to make a call that locks the container, e.g. + calling Container.GetInstance; this will not cause any new ContainerLocking event to + be raised. Doing so, however, is not advised, as that might cause any following executed handlers + to break, in case they require an unlocked container. + + + + + + Gets the container to which this ContainerOptions instance belongs to. + + The current Container. + + + + Gets or sets a value indicating whether the container allows overriding registrations. The default + is false. + + The value indicating whether the container allows overriding registrations. + + + + Gets or sets a value indicating whether the container should suppress checking for lifestyle + mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default + is false. This setting will have no effect when is true. + + The value indicating whether the container should suppress checking for lifestyle + mismatches. + + + + + Gets or sets a value indicating whether the container should use a loosened (i.e. less strict) + behavior for detecting lifestyle mismatches (see: https://simpleinjector.org/dialm). In short, + when is set to true + dependencies are allowed to be injected into + components. When disabled, a warning would be given in that case. + + + Simple Injector allows custom lifestyles to be created and this loosened behavior works on custom + lifestyles as well. The loosened behavior will ignore any lifestyle mismatch checks on any + component with a lifestyle that has a that is equal or shorter than + the length of . + + + + + + Gets or sets a value indicating whether the container should automatically trigger verification + and diagnostics of its configuration when the first service is resolved (e.g. the first call to + GetInstance). The behavior is identical to calling Verify() + manually. The default is false. + + The value indicating whether the container should automatically trigger verification. + + + Gets or sets a value indicating whether. + This method is deprecated. Changing its value will have no effect. + The value indicating whether the container will return an empty collection. + + + + Gets or sets a value indicating whether all the containers in the current AppDomain should throw + exceptions that contain fully qualified type name. The default is false which means + the type's namespace is omitted. + + The value indicating whether exception message should emit full type names. + + + + Gets or sets a value indicating whether the container should resolve unregistered concrete types. + The default value is true. Consider changing the value to false to prevent + accidental creation of types you haven't registered explicitly. + + The value indicating whether the container should resolve unregistered concrete types. + + Thrown when this container instance is locked and can not be altered. + + + + + Gets or sets the constructor resolution behavior. By default, the container only supports types + that have a single public constructor. + + The constructor resolution behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + Gets or sets the dependency injection behavior. + The constructor injection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the property selection behavior. The container's default behavior is to do no + property injection. + + The property selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the lifestyle selection behavior. The container's default behavior is to make + registrations using the lifestyle. + The lifestyle selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default lifestyle that the container will use when a registration is + made when no lifestyle is supplied. + The default lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default scoped lifestyle that the container should use when a registration is + made using Lifestyle.Scoped. + The default scoped lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. + By default, this value is true for the first few containers that are created in an AppDomain + and false for all other containers. You can set this value explicitly to false + to prevent the use of dynamic assemblies or you can set this value explicitly to true to + force more container instances to use dynamic assemblies. Note that creating an infinite number + of Container instances (for instance one per web request) + with this property set to true will result in a memory leak; dynamic assemblies take up + memory and will only be unloaded when the AppDomain is unloaded. + + A boolean indicating whether the container should use a dynamic assembly for compilation. + + + + + Registers an delegate that allows intercepting calls to + GetInstance and + . + + + If multiple registered instances must be applied, they will be + applied/wrapped in the order of registration, i.e. the first registered interceptor will call the + original instance producer delegate, the second interceptor will call the first interceptor, etc. + The last registered interceptor will become the outermost method in the chain and will be called + first. + + The delegate to register. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + The following example shows the usage of the method: + + { + object instance = producer.Invoke(); + Console.WriteLine(instance.GetType().Name + " resolved for " + context.Producer.ServiceType.Name); + return instance; + }, + context => context.Producer.ServiceType.Name.EndsWith("Controller")); + + container.Register(); + container.Register(); + + // This line will write "HomeViewModel resolved for IHomeViewModel" to the console. + container.GetInstance(); + ]]> + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The scope that manages the lifetime of singletons and other container-controlled instances. + + + + + Allows registering an delegate that will be called when the container + gets disposed, but before the container disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to + Dispose, the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Adds the to the list of items that will get disposed when the + container gets disposed. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. Instead, + provides an atomic operation for getting and setting an item. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either of the arguments is a null reference (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances + are returned in order of creation/registration. When + Container.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be + disposed in opposite order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + + An instance of this type can be injected into constructors of decorator classes that are registered + using RegisterDecorator. This type contains + contextual information about the applied decoration and it allows users to examine the given instance + to make runtime decisions. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterDecorator + overload that takes this delegate. This type contains information about the decoration that is about + to be applied and it allows users to examine the given instance to see whether the decorator should + be applied or not. + + + Please see the + RegisterDecorator + method for more information. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + Hooks into the building process and adds a decorator if needed. + + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diaal. + + + + Gets the lifestyles that causes the registrations to be conflicting. + instances. + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the registration that caused this warning. + An . + + + + Gets the list of registrations that are in conflict with the . + + A list of instances. + + + + Entry point for doing diagnostic analysis on instances. + + + The following example shows the usage of the Analyzer class: + + + + + + Analyzes the supplied instance. + + The container instance to analyze. + A collection of sub types that describe the diagnostic + warnings and messages. + + + + Diagnostic result for a warning about a concrete type that was not registered explicitly and was not + resolved using unregistered type resolution, but was created by the container using the transient + lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + Gets a collection of instances that describe all + container-registered dependencies for the given component. + List of objects. + + + + A hierarchical group of . + + + + + Gets the base that describes the service types of its + . The value often be either (in case this is a + root group) or a partial generic type to allow hierarchical grouping of a large number of related + generic types. + + The . + + + Gets the friendly name of the group. + The name. + + + Gets the description of the group. + The description. + + + Gets the diagnostic type of all grouped instances. + The . + + + Gets the parent or null (Nothing in VB) when this is the + root group. + The . + + + Gets the collection of child s. + A collection of elements. + + + Gets the collection of instances. + /// A collection of elements. + + + + Base class for types that hold information about a single diagnostic message or warning for a + particular type or part of the configuration. + + + + Gets the severity of this result. + The . + + + Gets the diagnostic type of this result. + The . + + + Gets the service type to which this warning is related. + A . + + + Gets the description of the diagnostic result. + A with the description. + + + Gets the documentation URL of the diagnostic result. + A with the URL. + + + Gets the hierarchical group to which this diagnostic result belongs. + The . + + + + Specifies the list of severity levels that diagnostic results can have. + + + + Information messages and tips about the configuration. + + + Warning messages that are likely to cause problems in your application. + + + + Specifies the list of diagnostic types that are currently supported by the diagnostic + . Note that new diagnostic types might be added in future versions. + For more information, please read the + Diagnosing your configuration using the Diagnostic + Services wiki documentation. + + + + + Diagnostic type that warns about + a concrete type that was not registered explicitly and was not resolved using unregistered type + resolution, but was created by the container using the transient lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + + Diagnostic type that warns when a + component depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + + Diagnostic type that warns when a + component depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + + Diagnostic type that warns when a component depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + + Diagnostic type that warns when multiple registrations map to the same component and + lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + + Diagnostic type that warns when a component is registered as transient, while implementing + . + For more information, see: https://simpleinjector.org/diadt. + + + + + Diagnostic type that warns when multiple registrations exist that map to the same component but + with different lifestyles, which will cause the component to be cached in different -possibly + incompatible- ways. + For more information, see: https://simpleinjector.org/diaal. + + + + + Diagnostic result for a warning about a component that is registered as transient, but implements + . + For more information, see: https://simpleinjector.org/diadt. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result for a warning about a + component that depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result that warns about a + component that depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + Gets the instance that describes the current relationship between the checked component + and the short-circuited dependency. + The . + + + + Gets the collection of registrations that have the component's current dependency as + implementation type, but have a lifestyle that is different than the current dependency. + + A collection of instances. + + + + Diagnostic result that warns about a component that depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + Gets the created type. + A . + + + Gets the list of registrations that are dependencies of the . + A collection of instances. + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + Gets the lifestyle on which instances are torn. + A . + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the list of registrations that are affected by this warning. + A list of instances. + + + + Thrown by the container in case of a diagnostic error. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message. + + The list of errors. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + Gets the list of instances. + A list of instances. + + + + Provides data for and interaction with the + ExpressionBuilding event of + the . An observer can change the + property to change the component that is + currently being built. + + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + + Gets the type that is known to be returned by the + Expression (most often the implementation + type used in the Register call). This type will be a derivative of + RegisteredServiceType (or + or RegisteredServiceType itself). If the Expression is changed, the new expression + must also return an instance of type KnownImplementationType or a sub type. + This information must be described in the new Expression. + + A . + + + Gets the lifestyle for the component that is currently being built. + The . + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Provides data for and interaction with the + ExpressionBuilt event of + the . An observer can change the + property to change the component that is currently + being built. + + + + Initializes a new instance of the class. + Type of the registered service. + The registered expression. + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + Gets or sets the current lifestyle of the registration. + The original lifestyle of the registration. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Helper methods for the container. + + + + + Contains contextual information about the direct consumer for which the given dependency is injected + into. + + + + Initializes a new instance of the class. + The constructor parameter for the created component. + + + Initializes a new instance of the class. + The implementation type of the consumer of the component that should be created. + The property for the created component. + + + Gets the service type of the consumer of the component that should be created. + The closed generic service type. + + + Gets the implementation type of the consumer of the component that should be created. + The implementation type. + + + + Gets the information about the consumer's target in which the dependency is injected. The target + can be either a property or a constructor parameter. + + The for this context. + + + + + + + + + + + + + + + + Discovers the attributes of the code element (a property or parameter) where a dependency will be + injected into, and provides access to its meta data. + + + + + Gets the constructor argument of the consumer of the component where the dependency will be + injected into. The property can return null. + + The or null when the dependency is injected into a property. + + + + + Gets the property of the consumer of the component where the dependency will be injected into. + The property can return null. + + The or null when the dependency is injected into a constructor + argument instead. + + + Gets the name of the target. + A string containing the name of the target. + + + Gets the type of the target. + A containing the type of the target. + + + Gets the member of the target. This is either the constructor of the parameter, or in + case the target is a property, the property itself will be returned. + A containing the type of the target. + + + + Returns an array of all of the custom attributes defined on either the or + the , excluding named attributes, or an empty array if there are no custom + attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + There is more than one attribute of type attributeType + defined on this member. + + + + Returns an array of custom attributes defined on either the or + the , identified by type, or an empty array if there are no custom + attributes of that type. + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + Thrown when attributeType is null. + + + + Indicates whether one or more instance of attributeType is defined on this either the + or the . + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + true if the attributeType is defined on this member; false otherwise. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The parameter to inspect. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The parameter to inspect.The parameter to inspect. + True to inspect the ancestors of element; otherwise, false. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The type of attribute to search for. + A custom attribute that matches attributeType, or null if no such attribute is found. + + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A custom attribute matching attributeType, or null if no such attribute is found. + + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter. + + The type of attribute to search for. + A collection of the custom attributes that are applied to element and that match T, or + an empty collection if no such attributes exist. + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter, and optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A collection of the custom attributes that are applied to element and that match T, or an + empty collection if no such attributes exist. + + + + + + + + + + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + GetCurrentRegistrations() or + GetRegistration(Type, bool). + + + The Register method overloads create InstanceProducer instances internally, but + InstanceProducers can be created manually to implement special scenarios. An + InstanceProducer wraps instance. The Registration builds an + that describes the intend to create the instance according to a certain + lifestyle. The InstanceProducer on the other hand transforms this Expression to a + delegate and allows the actual instance to be created. A Registration itself can't create any + instance. The InsanceProducer allows intercepting created instances by hooking onto the + Container.ExpressionBuilt event. The + RegisterDecorator methods for + instance work by hooking onto the ExpressionBuilt event and allow wrapping the returned instance + with a decorator. + + + The following example shows the creation of two different InstanceProducer instances that wrap + the same Registration instance. Since the Registration is created using the + Singleton lifestyle, both producers will return + the same instance. The InstanceProducer for the Interface1 however, will wrap that + instance in a (transient) Interface1Decorator. + (container); + + var producer1 = new InstanceProducer(typeof(Interface1), registration); + var producer2 = new InstanceProducer(typeof(Interface2), registration); + + container.RegisterDecorator(typeof(Interface1), typeof(Interface1Decorator)); + + var instance1 = (Interface1)producer1.GetInstance(); + var instance2 = (Interface2)producer2.GetInstance(); + + Assert.IsInstanceOfType(instance1, typeof(Interface1Decorator)); + Assert.IsInstanceOfType(instance2, typeof(ServiceImpl)); + + Assert.AreSame(((Interface1Decorator)instance1).DecoratedInstance, instance2); + ]]> + + + + Initializes a new instance of the class. + The service type for which this instance is created. + The . + + + + Gets the for this registration. The returned lifestyle can differ from the + lifestyle that is used during the registration. This can happen for instance when the registration + is changed by an ExpressionBuilt + registration or gets decorated. + + The for this registration. + + + Gets the service type for which this producer produces instances. + A instance. + + + Gets the instance for this instance. + The . + + + + Creates a new based on the given + and where the will be used as-is; + no interception (using ExpressionBuilt) such as + decorators will be applied. + + The service type for which this instance is created. + The expression that describes the instance to be produced. + The instance for this registration. + A new that describes the expression. + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + + Builds an expression that expresses the intent to get an instance by the current producer. A call + to this method locks the container. New registrations can't be made after a call to this method. + + An Expression. + + + + Gets the collection of relationships for this instance that the container knows about. + This includes relationships between the registered type and its dependencies and relationships + between applied decorators and their dependencies. Note that types that are not newed up by the + container and properties that are injected inside a custom delegate that is registered using the + RegisterInitializer + method are unknown to the container and are not returned from this method. + Also note that this method will return an empty collection when called before the + registered type is requested from the container (or before + Verify is called). + + An array of instances. + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + The various visualization options for building a string representation of + the object graph. + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + Thrown when options is null. + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + or . + + The service type. + + + Initializes a new instance of the class. + The . + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + A map containing a generic argument (such as T) and the concrete type (such as Int32) that it + represents. + + + + Implements equality. Needed for doing LINQ distinct operations. + The other to compare to. + True or false. + + + Overrides the default hash code. Needed for doing LINQ distinct operations. + An 32 bit integer. + + + + Container controlled collections can be supplied with both Type objects or direct Registration + instances. + + + + + Gets a message that describes the current exception. + + T + he error message that explains the reason for the exception, or an empty string(""). + + + + + Allows verifying whether a given type has a direct or indirect dependency on itself. Verifying is done + by preventing recursive calls to an InstanceProducer. A CyclicDependencyValidator instance checks a + single InstanceProducer and therefore a single service type. + + + + + Allows retrieving the concrete types of the generic type arguments of that must be used to create a + closed generic implementation of a given open generic implementation, based on on the concrete + arguments of the given closed base type. + + + + + Helper class for building closed generic type for a given open generic type and a closed generic base. + + + + Result of the GenericTypeBuilder. + + + + A open generic type with the concrete arguments that can be used to create a closed generic type. + + + + + Allows validating an ArgumentMapping. + + + + + Factory for the creation of a delegate that applies caching to the supplied + . + + A factory for creating new instances. + A factory that returns cached instances. + + + + Instances returned from the container can be cached. The contains several + overloads of the Register method that take a Lifestyle instance as argument to define + how returned instances should be cached. The core library contains two lifestyles out of the box. By + supplying Lifestyle.Transient, the registered instance is not + cached; a new instance is returned every time it is requested or injected. By supplying + Lifestyle.Singleton instances can be cached indefinitely; only + a single instance of the registered component will be returned by that container instance. Other + lifestyles are defined in integration and extension packages. The + CreateCustom method allows defining a custom lifestyle and + the CreateHybrid method + allows creating a lifestyle that mixes multiple other lifestyles. + + + This type is abstract and can be overridden to implement a custom lifestyle. + + + + + The lifestyle instance that doesn't cache instances. A new instance of the specified + component is created every time the registered service is requested or injected. + + + The following example registers the SomeServiceImpl implementation for the + ISomeService service type using the Transient lifestyle: + (Lifestyle.Transient); + ]]> + Note that Transient is the default lifestyle, the previous registration can be reduced to + the following: + (); + ]]> + + + + + + The lifestyle that caches components according to the lifetime of the container's configured + scoped lifestyle. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the active scope gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Scoped lifestyle: + (Lifestyle.Scoped); + ]]> + + + + + + The lifestyle that caches components during the lifetime of the instance + and guarantees that only a single instance of that component is created for that instance. Since + general use is to create a single Container instance for the lifetime of the application / + AppDomain, this would mean that only a single instance of that component would exist during the + lifetime of the application. In a multi-threaded applications, implementations registered using + this lifestyle must be thread-safe. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the container gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Singleton lifestyle: + (Lifestyle.Singleton); + ]]> + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the user friendly name of this lifestyle. + The user friendly name of this lifestyle. + + + + Gets the length of the lifestyle. Implementers must implement this property. The diagnostic + services use this value to compare lifestyles with each other to determine lifestyle + misconfigurations. + + The representing the length of this lifestyle. + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The lifestyle to use when + returns true. + The lifestyle to use when + returns false. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + lifestyle.GetCurrentScope(container) != null, + lifestyle, + Lifestyle.Transient); + + var mixedScopeLifestyle = Lifestyle.CreateHybrid( + () => HttpContext.Current != null, + new WebRequestLifestyle(), + mixedLifetimeTransientLifestyle); + ]]> + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Lifetime Scope and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The scoped lifestyle to use when + returns true. + The scoped lifestyle to use when + returns false. + A new scoped hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + + + + Creates a custom lifestyle using the supplied delegate. + + + The supplied will be called just once per registered + service. The supplied will be called by the framework + when the type is resolved for the first time, and the framework will supply the factory with a + Func<object> for creating new (transient) instances of that type (that might + have been intercepted and + initializers might have been applied). + It is the job of the to return a Func<object> + that applies the proper caching. The Func<object> that is returned by the + will be stored for that registration (every + registration will store its own Func<object> delegate) and this delegate will be + called every time the service is resolved (by calling + container.GetInstance<TService> or when that service is injected into another + type). + + The name of the lifestyle to create. The name is used to display the lifestyle + in the debugger. + A factory delegate that takes a Func<object> delegate + that will produce a transient instance and returns a delegate that returns cached instances. + A new . + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is an empty string. + + The following example shows the creation of a lifestyle that caches registered instances for 10 + minutes: + + { + TimeSpan timeout = TimeSpan.FromMinutes(10); + var syncRoot = new object(); + var expirationTime = DateTime.MinValue; + object instance = null; + + // If the application has multiple registrations using this lifestyle, each registration + // will get its own Func delegate (created here) and therefore get its own set + // of variables as defined above. + return () => + { + lock (syncRoot) + { + if (expirationTime < DateTime.UtcNow) + { + instance = instanceCreator(); + expirationTime = DateTime.UtcNow.Add(timeout); + } + + return instance; + } + }; + }); + + var container = new Container(); + + // We can reuse the created lifestyle for multiple registrations. + container.Register(customLifestyle); + container.Register(customLifestyle); + ]]> + + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified caching as + specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances instance using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + + The concrete type that will be registered. + The instance for which a + must be created. + A new or cached instance. + Thrown when is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + This method might fail when run in a partial trust sandbox when + is an internal type. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The delegate that will be responsible for creating new instances. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. An execution context scope flows with the logical execution context. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ExecutionContextScopeLifestyle class: + (Lifestyle.Scoped); + + using (AsyncScopedLifestyle.BeginScope(container)) + { + var instance1 = container.GetInstance(); + // ... + } + ]]> + + + + Initializes a new instance of the class. + + + + Begins a new scope for the given . + + The container. + A new instance. + + Thrown when the is a null reference. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + This lifestyle can be used to implement ambient context-less scoping in Simple Injector. This lifestyle + can be set as DefaultScopedLifestyle and later used via Lifestyle.Scoped to register scoped instances, + while instances are resolved via Scope.GetInstance. + + + + + Forwards CreateRegistration calls to the lifestyle that is returned from the registered + container.Options.LifestyleSelectionBehavior. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. A scope is thread-specific, each thread should define its own scope. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ThreadScopedLifestyle class: + (Lifestyle.Scoped); + + using (container.BeginLifetimeScope()) + { + var instance1 = container.GetInstance(); + + // This call will return the same instance. + var instance2 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance1, instance2)); + + // Create a nested scope. + using (container.BeginLifetimeScope()) + { + // A nested scope gets its own instance. + var instance3 = container.GetInstance(); + + Assert.IsFalse(object.ReferenceEquals(instance1, instance3)); + + // This call will return the same instance. + var instance4 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance3, instance4)); + } + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterConditional + overload that takes this delegate. This type contains information about the open generic service that + is about to be created and it allows the user to examine the given instance to decide whether this + implementation should be created or not. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the closed generic implementation type that will be created by the container. + + The implementation type. + + + Gets a value indicating whether a previous Register registration has already + been applied for the given . + The indication whether the event has been handled. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + A Registration implements lifestyle based caching for a single service and allows building an + that describes the creation of the service. + + + implementations create a new Registration instance for each registered + service type. s returned from the + BuildExpression method can be + intercepted by any event registered with , have + initializers + applied, and the caching particular to its lifestyle have been applied. Interception using the + Container.ExpressionBuilt will not + be applied in the Registration, but will be applied in . + + See the documentation for an example. + + + + + Initializes a new instance of the class. + + The this that created this registration. + The instance for this registration. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Gets the type that this instance will create. + The type that this instance will create. + + + Gets the this that created this registration. + The this that created this registration. + + + Gets the instance for this registration. + The instance for this registration. + + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. The default is false. Having a value of false, does not force an + instance to be disposed of, though; Transient instances, for instance, will never be disposed of. + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. + + + + Gets or sets a value indicating whether this registration object contains a user + supplied instanceCreator factory delegate. + + + + Builds a new with the correct caching (according to the specifications of + its ) applied. + + An . + + + + Gets the list of instances. Note that the list is only available + after calling . + + A new array containing the instances. + + + + Initializes an already created instance and applies properties and initializers to that instance. + + + This method is especially useful in integration scenarios where the given platform is in control + of creating certain types. By passing the instance created by the platform to this method, the + container is still able to apply any properties (as defined using a custom + ) and by applying any initializers. + + The instance to initialize. + Thrown when is a null + reference (Nothing in VB). + Thrown when the supplied is not + of type . + + + + Suppressing the supplied for the given registration. + + The . + The justification of why the warning must be suppressed. + Thrown when is a null + reference. + Thrown when either is an + empty string or when is not a valid value of . + + + + + Builds a delegate for the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers + that are applicable to the given (if any). + + The interface or base type that can be used to retrieve instances. + + The delegate supplied by the user that allows building or creating new instances. + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds a delegate for the creation of . + The returned might be intercepted by a + Container.ExpressionBuilding event, + and the creation of the will have been wrapped with a + delegate that executes the registered + initializers + that are applicable to the given (if any). + + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds an that describes the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers that are + applicable to the given (if any). + + + The interface or base type that can be used to retrieve instances. + + + The delegate supplied by the user that allows building or creating new instances. + An . + Thrown when one of the arguments is a null reference. + + + + + Builds an that describes the creation of . + The returned might be intercepted + by a Container.ExpressionBuilding + event, and the creation of the will have been wrapped with + a delegate that executes the registered + initializers that are applicable + to the InstanceProducer's ServiceType (if any). + + An . + Thrown when one of the arguments is a null reference. + + + Implements a cache for implementations. + + is thread-safe can be used over multiple threads concurrently, but note that the + cached instances might not be thread-safe. + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The container instance that the scope belongs to. + + + Gets the container instance that this scope belongs to. + The instance. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Adds the to the list of items that will get disposed when the + scope ends. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances are returned + in order of creation/registration. When Scope.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be disposed in opposite + order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + Releases all instances that are cached by the object. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType -or- null if there is no service object of type + . + + + + Releases all instances that are cached by the object. + + False when only unmanaged resources should be released. + + + + Base class for scoped lifestyles. A scoped lifestyle caches instances for the duration of an implicitly + or explicitly defined scope. Such scope can be an (implicitly defined) web request or an explicitly + defined Lifetime Scope. The lifetime of instances registered with a scoped lifestyle is always equal + or bigger than one-instance-per-object-graph. In other words, a call to GetInstance() will never create + more than one instance of such registered type. + + + + + Gets the scoped lifestyle that allows Scoped registrations to be resolved direclty from the + by calling . This allows multiple + scopes to be active and overlap within the same logical context, such as a single thread, or an + asynchronous context. + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Signals the lifestyle whether instances should be + disposed or not. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the length of the lifestyle. + The representing the length of this lifestyle. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The instance. + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Adds the to the list of items that will get disposed when the + scope ends. + + The instance. + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method should never return null. + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + + By default, this method calls the method and invokes the + returned delegate. This method can be overridden to provide an optimized way for getting the + current scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + Internal helper for string resources. + + + + Contains contextual information for creating an implementation type. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + Returns a list of base types and interfaces of implementationType that either + equal to serviceType or are closed or partially closed version of serviceType (in case + serviceType itself is generic). + So: + -in case serviceType is non generic, only serviceType will be returned. + -If implementationType is open generic, serviceType will be returned (or a partially closed + version of serviceType is returned). + -If serviceType is generic and implementationType is not, a closed version of serviceType will + be returned. + -If implementationType implements multiple (partially) closed versions of serviceType, all those + (partially) closed versions will be returned. + + The (open generic) service type to match. + The implementationType to search. + A list of types. + + + Useful extensions on . + + + + Builds an easy to read type name. Namespaces will be omitted, and generic types will be displayed + in a C#-like syntax. Ideal for reporting type names in exception messages. + + The type to convert. + A human-readable string representation of that type. + Thrown when the supplied argument is a null reference. + + + + Returns true is there is a closed version of the supplied + that is assignable from the current . This method returns true when either + itself, one of its base classes or one of its implemented interfaces is a + closed version of ; otherwise false. + + The type to check. + The generic type definition to match. + True when type is assignable; otherwise false. + + + + Gets the single closed version of that the current + is assignable from. In case none or multiple matching closed types are + found, and exception is thrown. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + The matching closed type. + Thrown when one of the arguments is a null reference. + Thrown when is not + a generic type or when none of the base classes or implemented interfaces of + are closed-versions of . + Thrown when multiple matching closed generic types + are found. + + + + Gets the list of closed versions of that the current + is assignable from. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + A list of matching closed generic types. + + + + Defines options to control the types returned from the + GetTypesToRegister + method. For a type to be returned, it should match all the conditions described by the class's + properties. In other words, in case the searched assembly contains a generic type, that is both a + decorator and a composite, it will only be returned by GetTypesToRegister in case both + , and + are set to true. + + + + Initializes a new instance of the class. + + + + Gets or sets a value indicating whether decorator types should be included in the result. The default + value of this property is false. A type is considered a decorator if the type's constructor + contains a parameter of the type that exactly matches the serviceType argument, + supplied to the + GetTypesToRegister + method, or when there is a argument where T matches the + serviceType argument. + + A boolean. + + + + Gets or sets a value indicating whether generic type definitions (types that have + TypeInfo.IsGenericTypeDefinition + set to true) + should be included in the result. The default value for this property is false. + + A boolean. + + + + Gets or sets a value indicating whether composite types should be included in the result. The default + value of this property is true. A type is considered a composite if the type's constructor + contains a parameter of IEnumerable<T>, ICollection<T>, + IList<T>, IReadOnlyCollection<T>, + IReadOnlyList<T> or T[] (array of T), where T + exactly matches the serviceType argument, supplied to the + GetTypesToRegister + method. + + A boolean. + + + + Provides data for and interaction with the + ResolveUnregisteredType event of + the . An observer can check the + to see whether the unregistered type can be handled. The + method can be called to register a delegate + that allows creation of instances of the unregistered for this and future requests. + + + + Gets the unregistered service type that is currently requested. + The unregistered service type that is currently requested. + + + + Gets a value indicating whether the event represented by this instance has been handled. + This property will return true when has been called on + this instance. + + The indication whether the event has been handled. + + + + Registers a delegate that allows creation of instances of the type + expressed by the for this and future requests. The delegate + will be caches and future requests will directly call that delegate. + + The delegate that allows creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers an that describes the creation of instances of the type + expressed by the for this and future requests. The delegate + will be cached and future requests will directly use that expression or the compiled delegate. + + + NOTE: If possible, use the Register(Registration) overload, + since this allows the analysis services to determine any configuration errors on the lifestyle of + the registration. + + The expression that describes the creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers a that describes the creation of instances of the type + expressed by the for this and future requests. The + registration will be cached and future requests will directly call unon that registration, the + expression that it generates or the delegate that gets compiled from that expression. + + The registration that describes the creation of instances according to + the registration's lifestyle of the type expressed by the . + Thrown when the is a + null reference. + Thrown when the is a + not exactly of type where T equals the . + + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + This enumeration defines in which way the container should run the verification process. + + + + + Specifies that the container performs verification only, which means that it will test whether + all registrations can be constructed by iterating the registrations and letting the container + create at least one instance of each registration. An + will be thrown in case the configuration is invalid. + + + + + Specifies that the container will run diagnostic analysis after the verification succeeded. The + container will diagnose the configuration with a subset of the available diagnostic warnings, that + are most likely an indication of a configuration mistake. A complete set of diagnostic warnings + can be retrieved by calling + Analyzer.Analyze or by viewing the + container in the Visual Studio debugger, after the verification has succeeded. + + + + + Visualization options for providing various information about instances. + + + + + Gets or sets a value indicating whether to include lifestyle information in the visualization. + + The value to include life style information. + + + + Gets or sets a value indicating whether to use fully qualified type names in the visualization. + + The value to use fully qualified type names. + + + diff --git a/packages/SimpleInjector.4.9.1/lib/netstandard1.3/SimpleInjector.dll b/packages/SimpleInjector.4.9.1/lib/netstandard1.3/SimpleInjector.dll new file mode 100644 index 0000000..a69c1ea Binary files /dev/null and b/packages/SimpleInjector.4.9.1/lib/netstandard1.3/SimpleInjector.dll differ diff --git a/packages/SimpleInjector.4.9.1/lib/netstandard1.3/SimpleInjector.xml b/packages/SimpleInjector.4.9.1/lib/netstandard1.3/SimpleInjector.xml new file mode 100644 index 0000000..218cbd4 --- /dev/null +++ b/packages/SimpleInjector.4.9.1/lib/netstandard1.3/SimpleInjector.xml @@ -0,0 +1,6167 @@ + + + + SimpleInjector + + + + + The standard exception thrown when a container has an error in resolving an object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Extension methods for enable advanced scenarios. + + + + + Determines whether the specified container is locked making any new registrations. The container + is automatically locked when GetInstance is called for the + first time. + + The container. + + true if the specified container is locked; otherwise, false. + + Thrown when is null. + + + Determines whether the specified container is currently verifying its configuration. + The container. + true if the specified container is verifying; otherwise, false. + Thrown when is null. + + + + Retrieves an item from the container stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The container. + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Stores an item by the given in the container. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The container. + The key of the item to insert or override. + The actual item. May be null. + Thrown when either or + is a null reference (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The container. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either , + or is a null reference (Nothing in VB). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Common base class for Simple Injector API classes. + + + + + + + + + + + + + Gets the of the current instance. + The instance that represents the exact runtime + type of the current instance. + + + Deprecation extensions. + + + + This interface method has been removed. Please call GetInstanceProducerFor instead. + + The behavior. + The consumer. + Throws an exception. + + + + This interface method has been removed. Please call SelectProperty(PropertyInfo) instead. + + The behavior. + Type of the abstraction that is requested. + The property to check. + True when the property should be injected. + + + + Defines the container's behavior for finding a suitable constructor for the creation of a type. + Set the ConstructorResolutionBehavior + property of the container's property to change the default behavior + of the container. + + + + + Gets the given 's constructor that can be used by the + container to create that instance. + + Type of the implementation to find a suitable constructor for. + + The . This method never returns null. + + Thrown when no suitable constructor could be found. + + + + Defines the container's behavior for building an expression tree for an dependency to inject, based on + the information of the consuming type the dependency is injected into. + Set the ConstructorInjectionBehavior + property of the container's property to change the default behavior + of the container. + + + + Verifies the specified . + Contextual information about the consumer where the built dependency is + injected into. + + Thrown when the type of the target supplied with + the supplied cannot be used for auto wiring. + Thrown when the supplied argument is a null reference. + + + + Gets the for the + Target of the supplied . + + Contextual information about the consumer where the built dependency is + injected into. + The indication whether the method should return null or throw + an exception when the type is not registered. + An that describes the intend of creating that + Target. This method never returns null. + Thrown when the argument is a null reference. + + + + Defines the container's behavior for selecting the lifestyle for a registration in case no lifestyle + is explicitly supplied. + Set the LifestyleSelectionBehavior + property of the container's property to change the default behavior + of the container. By default, when no lifestyle is explicitly supplied, the + Transient lifestyle is used. + + + + Selects the lifestyle based on the supplied type information. + Type of the implementation to that is registered. + The suited for the given type. + Thrown when either one of the arguments is a null reference. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterResolveInterceptor + method that takes this delegate. This type contains contextual information about a resolved type and it + allows the user to examine the given instance to decide whether the + should be applied or not. + + + + + Gets the that is responsible for the initialization of the created + instance. + + The or null (Nothing in VB) when the instance producer is + unknown. + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterInitializer + overload that takes this delegate. This type contains contextual information about the creation and it + allows the user to examine the given instance to decide whether the instance should be initialized or + not. + + + + + Gets a null reference. This property has been deprecated. + + The null (Nothing in VB). + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + Contains data that can be used to initialize a created instance. This data includes the actual + created and the information about the created instance. + + + + Initializes a new instance of the struct. + The that contains contextual information + about the created instance. + The created instance. + + + Gets the with contextual information about the + created instance. + The . + + + Gets the created instance. + The created instance. + + + + + + + + + + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + True if a and b are equal; otherwise, false. + + + + Indicates whether the values of two specified objects are + not equal. + + The first object to compare. + The second object to compare. + True if a and b are not equal; otherwise, false. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + + + Initializes a new instance of the struct. + The scope factory. + The container. + + + Gets the lazily initialized Scope of the current LazyScope instance. + The current Scope or null. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + Implementation type. + + + + Initializes a new instance of the + struct. + The registration. + + + + Gets the lazily initialized instance for the of the current LazyScopedRegistration. + + The scope that is used to retrieve the instance. + The cached instance. + + + + Defines the container's behavior for selecting properties to inject during the creation of a type. + Set the PropertySelectionBehavior + property of the container's property to change the default behavior + of the container. By default, no properties will be injected by the container. + + + + + Determines whether a property should be injected by the container upon creation of its type. + + + The type being created for which the property should be injected. Note that this might a + different type than the type on which the property is declared (which might be a base class). + The property to check. + True when the property should be injected. + + + + A known relationship defines a relationship between two types. The Diagnostics Debug View uses this + information to spot possible misconfigurations. + + + + Initializes a new instance of the class. + The implementation type of the parent type. + The lifestyle of the parent type. + The type that the parent depends on (it is injected into the parent). + + + Gets the implementation type of the parent type of the relationship. + The implementation type of the parent type of the relationship. + + + Gets the lifestyle of the parent type of the relationship. + The lifestyle of the parent type of the relationship. + + + Gets the type that the parent depends on (it is injected into the parent). + The type that the parent depends on. + + + + + + + + + + + + + The container. Create an instance of this type for registration of dependencies. + + + + Thread-safety: + Resolving instances can be done safely from multiple threads concurrently, but registration needs to + be done from one single thread. + + + It is therefore safe to call , , + GetService, and + and anything related to resolving instances from multiple thread + concurrently. It is however unsafe to call + RegisterXXX, + , , , + or anything related to registering from multiple threads concurrently. + + + Methods for batch registration. + Methods for registration of collections. + Methods for conditional registrations. + + These conditional registration methods lack a Func{PredicateContext, TService} predicate + method. This is deliberate, because would force the factory to be registered as transient, forcing + the whole parent structure to become transient as well. Besides this, it would blind the diagnostic + system, because it will stop at the delegate, instead of being able to analyze the object graph as + a whole. + + Methods for registration. + Methods for registration of decorators. + Methods for resolving instances. + Methods for verifying the container. + + + Initializes a new instance of the class. + + + Gets the container options. + The instance for this container. + + + Gets the container scope that that manages the lifetime of singletons and other + container-controlled instances. Use this property to register actions that need to be called + and instances that need to be disposed when the container gets disposed. + The instance for this container. + + + + Gets a value indicating whether the container is currently being verified on the current thread. + + True in case the container is currently being verified on the current thread; otherwise + false. + + + + Gets the intermediate lifestyle that forwards CreateRegistration calls to the lifestyle that is + returned from the registered container.Options.LifestyleSelectionBehavior. + + + + + Returns an array with the current registrations. This list contains all explicitly registered + types, and all implicitly registered instances. Implicit registrations are all concrete + unregistered types that have been requested, all types that have been resolved using + unregistered type resolution (using the event), and + requested unregistered collections. Note that the result of this method may change over time, + because of these implicit registrations. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + + + + Returns an array with the current registrations for root objects. Root objects are registrations + that are in the root of the object graph, meaning that no other registration is depending on it. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + This list contains the root objects of all explicitly registered types, and all implicitly + registered instances. Implicit registrations are all concrete unregistered types that have been + requested, all types that have been resolved using unregistered type resolution (using the + event), and requested unregistered collections. Note that + the result of this method may change over time, because of these implicit registrations. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + Thrown when this method is called before + has been successfully called. + + + Releases all instances that are cached by the object. + + + Prevents any new registrations to be made to the container. + + + Releases all instances that are cached by the object. + True for a normal dispose operation; false to finalize the handle. + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + An assembly that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the transient lifestyle. + + The definition of the open generic type. + A list types to be registered. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the given . + + The definition of the open generic type. + A list types to be registered. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + assemblies = new[] { typeof(ILogger).Assembly }; + var types = container.GetTypesToRegister(assemblies) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ( + typeof(ILogger).Assembly, + typeof(FileLogger).Assembly) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Container.Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete types that are located in the supplied + and implement or inherit from the supplied and match the specified + . can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var options = new TypesToRegisterOptions { IncludeGenericTypeDefinitions: true }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies, options) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + The options. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Registers a dynamic (container-uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + + The container-uncontrolled collection to register. + + + Thrown when this container instance is locked and can not be altered, or when a + for has already + been registered. + + + Thrown when is a null reference. + + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when and + are not a generic type or when + is a partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of the type returned from + will be returned every time a + is requested and where the supplied + returns true. The instance is cached according to the supplied + . Both the and + will only be evaluated a finite number of times; + they unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + A factory that allows building Type objects that define the + implementation type to inject, based on the given contextual information. The delegate is allowed + to return (partially) open-generic types. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the registration can be applied for + the requested service type. This predicate can be used to build a fallback mechanism where + multiple registrations for the same service type are made. + Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is a + partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + is requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is open generic or + is not assignable to . + + Thrown when this container instance is locked and can not be altered. + + + + + Occurs when an instance of a type is requested that has not been registered explicitly, allowing + resolution of unregistered types before the container tries to create the type. + + + + The event is called by the container every time an + unregistered type is requested for the first time, allowing a developer to do unregistered type + resolution. By calling the + Register method on the + , a , or + delegate can be registered allowing the container to retrieve + instances of the requested type. This registration is cached and it prevents the + ResolveUnregisteredType event from being called again for the same type. + + + When no registered event handled the registration of an unregistered type, the container will try + to create the type when this type is either concrete or is the + interface. Concrete types will be registered with the Transient + lifestyle and registrations will return an empty collection. When no + even handled the registration and the container could not create it, an exception is thrown. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once. While the calls to for a given type + are finite (and will in most cases happen just once), a container can call the delegate multiple + times and make parallel calls to the delegate. You must make sure that the code can be called + multiple times and is thread-safe. + + + + The following example shows the usage of the event: + + { + void Validate(T instance); + } + + // Implementation of the null object pattern. + public class EmptyValidator : IValidator + { + public void Validate(T instance) + { + // Does nothing. + } + } + + [TestMethod] + public void TestResolveUnregisteredType() + { + // Arrange + var container = new Container(); + + // Register an EmptyValidator to be returned when a IValidator is requested: + container.ResolveUnregisteredType += (sender, e) => + { + if (e.UnregisteredServiceType.IsGenericType && + e.UnregisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var validatorType = typeof(EmptyValidator<>).MakeGenericType( + e.UnregisteredServiceType.GetGenericArguments()); + + // Register the instance as singleton. + e.Register(Lifestyle.Singleton.CreateRegistration(validatorType, container)); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(EmptyValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(EmptyValidator)); + } + ]]> + + The example above registers a delegate that is raised every time an unregistered type is requested + from the container. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will request the container for a concrete EmptyValidator<T> implementation that + implements the given + UnregisteredServiceType, and + registers a delegate that will return this created instance. The e.Register call + registers the method in the container, preventing the from + being called again for the exact same service type, preventing any performance penalties. + + + Please note that given example is just an uhhmm... example. In the case of the example the + EmptyValidator<T> can be better registered using of the built-in + Register methods instead. These methods take + care of any given generic type constraint and allow the implementation to be integrated into the + container's pipeline, which allows it to be intercepted using the + event and allow any registered initializers to be + applied. + + + + + + Occurs after the creation of the of a registered type is complete (the + lifestyle has been applied), allowing the created to be wrapped, + changed, or replaced. Multiple delegates may handle the same service type. + + + + The ExpressionBuilt event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilt event, can change the + property on the + , which allows changing the way the type is constructed. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to for a + given type are finite (and will in most cases happen just once), a container can call the delegate + multiple times and make parallel calls to the delegate. You must make sure that the code can be + called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilt event: + + { + void Validate(T instance); + } + + public interface ILogger + { + void Write(string message); + } + + // Implementation of the decorator pattern. + public class MonitoringValidator : IValidator + { + private readonly IValidator validator; + private readonly ILogger logger; + + public MonitoringValidator(IValidator validator, ILogger logger) + { + this.validator = validator; + this.logger = logger; + } + + public void Validate(T instance) + { + this.logger.Write("Validating " + typeof(T).Name); + this.validator.Validate(instance); + this.logger.Write("Validated " + typeof(T).Name); + } + } + + [TestMethod] + public void TestExpressionBuilt() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + container.Register, OrderValidator>(); + container.Register, CustomerValidator>(); + + // Intercept the creation of IValidator instances and wrap them in a MonitoringValidator: + container.ExpressionBuilt += (sender, e) => + { + if (e.RegisteredServiceType.IsGenericType && + e.RegisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var decoratorType = typeof(MonitoringValidator<>) + .MakeGenericType(e.RegisteredServiceType.GetGenericArguments()); + + // Wrap the IValidator in a MonitoringValidator. + e.Expression = Expression.New(decoratorType.GetConstructors()[0], new Expression[] + { + e.Expression, + container.GetRegistration(typeof(ILogger)).BuildExpression(), + }); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(MonitoringValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(MonitoringValidator)); + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will changes the current with a new one that creates + a new MonitoringValidator<T> that takes the current validator (and an ILogger) + as an dependency. + + + Please note that given example is just an uhhmm... example. In the case of the example the + MonitoringValidator<T> is a decorator and instead of manually writing this code that + many limitations, you can use one of the built-in + RegisterDecorator methods instead. + These extension methods take care of any given generic type constraint, allow to register decorators + conditionally and allow the decorator to be integrated into the container's pipeline, which allows + it to be intercepted using the event and allow any registered + initializers to be applied. + + + + + + Occurs directly after the creation of the of a registered type is made, + but before any initializer and lifestyle specific caching + has been applied, allowing the created to be altered. Multiple delegates + may handle the same service type. + + + + The ExpressionBuilding event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilding event, can change the + property on the + , which allows changing the way the type is constructed. + + + The exact type supplied depends on the type of registration. + Registrations that explicitly supply the implementation type (such as + Register<TService, TImplementation>()) + will result in an , while registrations that take a delegate (such as + Register<TService>(Func<TService>)) + will result in an . Singletons that are passed in using their + value (RegisterInstance<TService>(TService)) + will result in an . Note that other ExpressionBuilding + registrations might have changed the + property and might have supplied an of a different type. The order in + which these events are registered might be of importance to you. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to registered ExpressionBuilding + events for a given type are finite (and will in most cases happen just once), a container can + call the delegate multiple times and make parallel calls to the delegate. You must make sure that + the code can be called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilding event: + + { + var expression = e.Expression as NewExpression; + + if (expression != null) + { + var propertiesToInject = + from property in expression.Constructor.DeclaringType.GetProperties() + where property.GetCustomAttributes(typeof(MyInjectPropertyAttribute), true).Any() + let registration = container.GetRegistration(property.PropertyType, true) + select Tuple.Create(property, registration); + + if (propertiesToInject.Any()) + { + Func[], object> injectorDelegate = + (instance, dependencies) => + { + foreach (var dependency in dependencies) + { + dependency.Item1.SetValue(instance, dependency.Item2.GetInstance(), null); + } + + return instance; + }; + + e.Expression = Expression.Convert( + Expression.Invoke( + Expression.Constant(injectorDelegate), + e.Expression, + Expression.Constant(propertiesToInject.ToArray())), + expression.Constructor.DeclaringType); + } + } + }; + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks if the type contains properties that are + decorated with the supplied MyInjectPropertyAttribute. If decorated properties are found, + the given expression is replaced with an expression that injects decorated properties. + + + + + Gets the object that allows access to methods related to registration and creation of collections. + The instance for this container. + + + This property is obsolete. Please use instead. + The instance for this container. + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that an instance of will be returned when it + is requested. The instance is cached according to the supplied . + + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a new instance of will be returned every time a + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers that an instance of will be returned when an + instance of type is requested. The instance is cached according to + the supplied . + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning transient instances of + . The delegate is expected to always return a new instance on + each call. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. This can be an open-generic type. + Thrown when is a null + references (Nothing in VB). + Thrown when represents + a type that can not be created by the container. + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that a new instance of will be returned every time a + is requested. If and + represent the same type, the type is registered by itself. + Open and closed generic types are supported. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when or + are null references (Nothing in VB). + Thrown when is + no sub type from (or the same type). + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that an instance of type will be returned when an + instance of type is requested. The instance is cached according to + the supplied . Open and closed generic types are supported. + + The interface or base type that can be used to retrieve the instances. + This can be an open-generic type. + The concrete type that will be registered. + This can be an open-generic type. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container, when either + or are open generic types, or when + is not assignable from the . + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Registers the specified delegate that allows returning instances of . + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. + The delegate that will be used for creating new instances. + Thrown when either or + are null references (Nothing in VB). + Thrown when represents an + open generic type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use the overload that accepts a delegate. + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton(Type, Func<object>). + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single concrete instance that will be constructed using constructor injection and will + be returned when this instance is requested by type . + This must be thread-safe when working in a multi-threaded + environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when + has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that the same a single instance of type will be + returned every time an type is requested. If + and represent the same + type, the type is registered by itself. must be thread-safe + when working in a multi-threaded environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + + The interface or base type that can be used to retrieve the instances. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows constructing a single instance of + . This delegate will be called at most once during the lifetime of + the application. The returned instance must be thread-safe when working in a multi-threaded + environment. + If the instance returned from implements , + the created instance will get disposed when Container.Dispose + gets called. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating this single + instance. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a + null reference. + + + + Registers that the same instance of type will be returned every + time an instance of type type is requested. If + and represent the same type, the + type is registered by itself. must be thread-safe when working + in a multi-threaded environment. Open and closed generic types are supported. + + The base type or interface to register. + This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from , or when one of them represents an open generic + type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that allows constructing a single + instance. The container will call this delegate at most once during the lifetime of the application. + + The base type or interface to register. + The delegate that will be used for creating that single instance. + Thrown when represents an open + generic type. + Thrown when either or + are null references (Nothing in + VB). + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers an delegate that runs after the creation of instances that + implement or derive from the given . Please note that only instances + that are created by the container (using constructor injection) can be initialized this way. + + The type for which the initializer will be registered. + The delegate that will be called after the instance has been + constructed and before it is returned. + + Thrown when the is a null reference. + + + Thrown when this container instance is locked and can not be altered. + + + Multiple delegates can be registered per + and multiple initializers can be applied on a created instance, + before it is returned. For instance, when registering a + for type , the delegate will be called for every instance created by + the container, which can be nice for debugging purposes. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + The following example shows the usage of the + RegisterInitializer method: + + (); + + // Configuring property injection for types that implement ICommand: + container.RegisterInitializer(command => + { + command.SendAsync = true; + }); + + // Configuring property injection for types that implement CommandBase: + container.RegisterInitializer(command => + { + command.Clock = container.GetInstance(); + }); + + // Act + var command = (ConcreteCommand)container.GetInstance(); + + // Assert + // Because ConcreteCommand implements both ICommand and CommandBase, + // both the initializers will have been executed. + Assert.IsTrue(command.SendAsync); + Assert.IsNotNull(command.Clock); + } + ]]> + + The container does not use the type information of the requested service type, but it uses the + type information of the actual implementation to find all initialized that apply for that + type. This makes it possible to have multiple initializers to be applied on a single returned + instance while keeping performance high. + + + Registered initializers will only be applied to instances that are created by the container self + (using constructor injection). Types that are newed up manually by supplying a + delegate to the container (using the + method) or registered as single instance + (using ) will not trigger initialization. + When initialization of these instances is needed, this must be done manually, as can be seen in + the following example: + commandInitializer = command => + { + initializerCallCount++; + }); + + // Configuring that initializer. + container.RegisterInitializer(commandInitializer); + + container.Register(() => + { + // Create a ConcreteCommand manually: will not be initialized. + var command = new ConcreteCommand("Data Source=.;Initial Catalog=db;"); + + // Run the initializer manually. + commandInitializer(command); + + return command; + }); + + // Act + var command = container.GetInstance(); + + // Assert + // The initializer will only be called once. + Assert.AreEqual(1, initializerCallCount); + } + ]]> + The previous example shows how a manually created instance can still be initialized. Try to + prevent creating types manually, by changing the design of those classes. If possible, create a + single public constructor that only contains dependencies that can be resolved. + + + + + + Registers an delegate that runs after the + creation of instances for which the supplied returns true. Please + note that only instances that are created by the container can be initialized this way. + + The delegate that will be called after the instance has been + constructed and before it is returned. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + Note: The is not guaranteed to be called once per registration; + when a registration's instance is requested for the first time simultaneously over multiple thread, + the predicate might be called multiple times. The caller of this method is responsible of supplying + a predicate that is thread-safe. + + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is ambiguous, + when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Act + IFoo foo = container.GetInstance(); + IBar bar = container.GetInstance(); + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + + In the example above a singleton registration is created for type FooBar and this + registration is added to the container for each interface (IFoo and IBar) that it + implements. Since both services use the same singleton registration, requesting those services + will result in the return of the same (singleton) instance. + + + events are applied to the of the + instance and are therefore applied once. + events on the other hand get applied to the Expression of the . + Since each AddRegistration gets its own instance producer (that wraps the + Registration instance), this means that the ExpressionBuilt events will be + applied for each registered service type. + + + The most practical example of this is the use of decorators using one of the + RegisterDecorator overloads (decorator registration + use the ExpressionBuilt event under the covers). Take a look at the following example: + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Registere a decorator for IBar, but not for IFoo + container.RegisterDecorator(typeof(IBar), typeof(BarDecorator)); + + // Act + var foo = container.GetInstance(); + var decorator = container.GetInstance() as BarDecorator; + var bar = decorator.DecoratedBar; + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + The example shows that the decorator gets applied to IBar but not to IFoo, but that + the decorated IBar is still the same instance as the resolved IFoo instance. + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is not a reference + type, is open generic, is ambiguous, when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . By default, a new + instance will be returned on each request (according the + Transient lifestyle), independently of the lifestyle of the + wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + + Thrown when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type or + where T is . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . Decorators can be applied to both open, closed, and + non-generic service types. By default, a new instance will be + returned on each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + The following example shows the definition of a generic ICommandHandler<T> interface, + a CustomerMovedCommandHandler implementing that interface, and a + ValidatorCommandHandlerDecorator<T> that acts as a decorator for that interface. + + { + void Handle(TCommand command); + } + + public class CustomerMovedCommand + { + [Required] + public int CustomerId { get; set; } + + [Required] + public Address Address { get; set; } + } + + public class CustomerMovedCommandHandler + : ICommandHandler + { + public void Handle(CustomerMovedCommand command) + { + // some logic + } + } + + // Decorator that validates commands before they get executed. + public class ValidatorCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly Container container; + + public ValidatorCommandHandlerDecorator( + ICommandHandler decoratedHandler, + Container container) + { + this.decoratedHandler = decoratedHandler; + this.container = container; + } + + public void Handle(TCommand command) + { + this.Validate(command); + + this.decoratedHandler.Handle(command); + } + + private void Validate(TCommand command) + { + var validationContext = + new ValidationContext(command, this.container, null); + + Validator.ValidateObject(command, validationContext); + } + } + + // Decorator that measures the time it takes to execute a command. + public class MonitoringCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly ILogger logger; + + public MonitoringCommandHandlerDecorator( + ICommandHandler decoratedHandler, + ILogger logger) + { + this.decoratedHandler = decoratedHandler; + this.logger = logger; + } + + public void Handle(TCommand command) + { + var watch = Stopwatch.StartNew(); + + this.decoratedHandler.Handle(command); + + this.logger.Log(string.Format("{0} executed in {1} ms.", + command.GetType().Name, watch.ElapsedMilliseconds)); + } + } + + [TestMethod] + public static void TestRegisterOpenGenericDecorator() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + + // Search the given assembly and register all concrete types that + // implement ICommandHandler. + container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), + typeof(ICommandHandler<>).Assembly); + + // Wrap all ICommandHandler service types with a decorator + // that measures and logs the duration of that handler. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(MonitoringCommandHandlerDecorator<>)); + + // Wrap all ICommandHandler types (in this case it will + // wrap the monitoring decorator), but only if the TCommand contains + // any properties. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(ValidatorCommandHandlerDecorator<>), context => + { + var commandType = context.ServiceType.GetGenericArguments()[0]; + bool mustDecorate = commandType.GetProperties().Any(); + return mustDecorate; + }); + + // Act + var handler = + container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(handler, + typeof(ValidatorCommandHandlerDecorator)); + } + ]]> + + The (possibly open generic) service type that will be wrapped by the + given . + The (possibly the open generic) decorator type that will + be used to wrap the original service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or implement + , when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned when the supplied + returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the decorator type that is returned from is + supplied when the supplied returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the decorator type that is returned by the + supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The types returned from the may be non-generic, + closed-generic, open-generic and even partially-closed generic. The container will try to fill in + the generic parameters based on the resolved service type. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The type returned from may have a constructor with an + argument of type where T is . In this + case, the library will not inject the decorated itself into the + decorator instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + The following is an example of the registration of a decorator through the factory delegate: + , MoveCustomerCommandHandler>(); + + container.RegisterDecorator( + typeof(ICommandHandler<>), + context => typeof(LoggingCommandHandler<,>).MakeGenericType( + typeof(LoggingCommandHandler<,>).GetGenericArguments().First(), + context.ImplementationType), + Lifestyle.Transient, + context => true); + + var handler = container.GetInstance>(); + + Assert.IsInstanceOfType(handler, + typeof(LoggingCommandHandler)); + + ]]> + The code above allows a generic LoggingCommandHandler<TCommand, TImplementation> to + be applied to command handlers, where the second generic argument will be filled in using the + contextual information. + + The definition of the (possibly open generic) service type that will + be wrapped by the decorator type that is returned from . + A factory that allows building Type objects that define the + decorators to inject, based on the given contextual information. The delegate is allowed to return + (partially) open-generic types. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the decorator must be applied to a + service type. + Thrown when one of the arguments is a null reference. + + + + Ensures that the supplied decorator is returned when the supplied + returns true, wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. By default, a new instance will be returned on + each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when does not inherit + from or implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested TService. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested serviceType. + Thrown when there are errors resolving the service instance. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType. -or- null if there is no service object of type + . + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + An or null (Nothing in VB). + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned, or an exception is throw when + is set to true. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + The indication whether the method should return null or throw + an exception when the type is not registered. + An or null (Nothing in VB). + + + + Verifies and diagnoses this Container instance. This method will call all registered + delegates, iterate registered collections and throws an exception if there was an error. + + Thrown when the registration of instances was + invalid. + + + + Verifies the Container. This method will call all registered delegates, + iterate registered collections and throws an exception if there was an error. + + Specifies how the container should verify its configuration. + Thrown when the registration of instances was + invalid. + Thrown in case there are diagnostic errors and + the option is supplied. + Thrown when has an invalid value. + + + + Contains methods for registering and creating collections in the . + + + + + Gets the for this instance. + + The for this instance. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new to a collection of registrations for the given + . Calls to Append can both preceed and follow a call to one + of the Container.Collections.Register + overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + Thrown when the is ambiguous. + + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + The lifestyle that specifies how the returned instance will be cached. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends the specified delegate to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The element type of the collections to register. + The instance to register. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + TThe element type of the collections to register. + The instance to register. + Thrown when the is ambiguous, or + does not implement . + + Thrown when either or + are null references. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + The container-uncontrolled collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Provides data for and interaction with the + ContainerLocking event of + the . + + + + + Delegate that allows intercepting calls to and + . + + Contextual information about the to be created object. + A delegate that produces the actual instance according to its + lifestyle settings. + The instance that is returned from or an intercepted instance. + + + Configuration options for the Container. + + The following example shows the typical usage of the ContainerOptions class. + (); + + // Use of ContainerOptions class here. + container.Options.AllowOverridingRegistrations = true; + + // Replaces the previous registration of ITimeProvider + container.Register(); + ]]> + + + + + Occurs just before the container is about to be locked, giving the developer a last change to + interact and change the unlocked container before it is sealed for further modifications. Locking + typically occurs by a call to Container.GetInstance, Container.Verify, or any other + method that causes the construction and resolution of registered instances. + + + + The ContainerLocking event is called exactly once by the container, allowing a developer to + register types, hook unregistered type resolution events that need to be applied last, or see + who is responsible for locking the container. + + + A registered event handler delegate is allowed to make a call that locks the container, e.g. + calling Container.GetInstance; this will not cause any new ContainerLocking event to + be raised. Doing so, however, is not advised, as that might cause any following executed handlers + to break, in case they require an unlocked container. + + + + + + Gets the container to which this ContainerOptions instance belongs to. + + The current Container. + + + + Gets or sets a value indicating whether the container allows overriding registrations. The default + is false. + + The value indicating whether the container allows overriding registrations. + + + + Gets or sets a value indicating whether the container should suppress checking for lifestyle + mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default + is false. This setting will have no effect when is true. + + The value indicating whether the container should suppress checking for lifestyle + mismatches. + + + + + Gets or sets a value indicating whether the container should use a loosened (i.e. less strict) + behavior for detecting lifestyle mismatches (see: https://simpleinjector.org/dialm). In short, + when is set to true + dependencies are allowed to be injected into + components. When disabled, a warning would be given in that case. + + + Simple Injector allows custom lifestyles to be created and this loosened behavior works on custom + lifestyles as well. The loosened behavior will ignore any lifestyle mismatch checks on any + component with a lifestyle that has a that is equal or shorter than + the length of . + + + + + + Gets or sets a value indicating whether the container should automatically trigger verification + and diagnostics of its configuration when the first service is resolved (e.g. the first call to + GetInstance). The behavior is identical to calling Verify() + manually. The default is false. + + The value indicating whether the container should automatically trigger verification. + + + Gets or sets a value indicating whether. + This method is deprecated. Changing its value will have no effect. + The value indicating whether the container will return an empty collection. + + + + Gets or sets a value indicating whether all the containers in the current AppDomain should throw + exceptions that contain fully qualified type name. The default is false which means + the type's namespace is omitted. + + The value indicating whether exception message should emit full type names. + + + + Gets or sets a value indicating whether the container should resolve unregistered concrete types. + The default value is true. Consider changing the value to false to prevent + accidental creation of types you haven't registered explicitly. + + The value indicating whether the container should resolve unregistered concrete types. + + Thrown when this container instance is locked and can not be altered. + + + + + Gets or sets the constructor resolution behavior. By default, the container only supports types + that have a single public constructor. + + The constructor resolution behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + Gets or sets the dependency injection behavior. + The constructor injection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the property selection behavior. The container's default behavior is to do no + property injection. + + The property selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the lifestyle selection behavior. The container's default behavior is to make + registrations using the lifestyle. + The lifestyle selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default lifestyle that the container will use when a registration is + made when no lifestyle is supplied. + The default lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default scoped lifestyle that the container should use when a registration is + made using Lifestyle.Scoped. + The default scoped lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. + By default, this value is true for the first few containers that are created in an AppDomain + and false for all other containers. You can set this value explicitly to false + to prevent the use of dynamic assemblies or you can set this value explicitly to true to + force more container instances to use dynamic assemblies. Note that creating an infinite number + of Container instances (for instance one per web request) + with this property set to true will result in a memory leak; dynamic assemblies take up + memory and will only be unloaded when the AppDomain is unloaded. + + A boolean indicating whether the container should use a dynamic assembly for compilation. + + + + + Registers an delegate that allows intercepting calls to + GetInstance and + . + + + If multiple registered instances must be applied, they will be + applied/wrapped in the order of registration, i.e. the first registered interceptor will call the + original instance producer delegate, the second interceptor will call the first interceptor, etc. + The last registered interceptor will become the outermost method in the chain and will be called + first. + + The delegate to register. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + The following example shows the usage of the method: + + { + object instance = producer.Invoke(); + Console.WriteLine(instance.GetType().Name + " resolved for " + context.Producer.ServiceType.Name); + return instance; + }, + context => context.Producer.ServiceType.Name.EndsWith("Controller")); + + container.Register(); + container.Register(); + + // This line will write "HomeViewModel resolved for IHomeViewModel" to the console. + container.GetInstance(); + ]]> + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The scope that manages the lifetime of singletons and other container-controlled instances. + + + + + Allows registering an delegate that will be called when the container + gets disposed, but before the container disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to + Dispose, the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Adds the to the list of items that will get disposed when the + container gets disposed. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. Instead, + provides an atomic operation for getting and setting an item. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either of the arguments is a null reference (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances + are returned in order of creation/registration. When + Container.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be + disposed in opposite order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + + An instance of this type can be injected into constructors of decorator classes that are registered + using RegisterDecorator. This type contains + contextual information about the applied decoration and it allows users to examine the given instance + to make runtime decisions. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterDecorator + overload that takes this delegate. This type contains information about the decoration that is about + to be applied and it allows users to examine the given instance to see whether the decorator should + be applied or not. + + + Please see the + RegisterDecorator + method for more information. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + Hooks into the building process and adds a decorator if needed. + + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diaal. + + + + Gets the lifestyles that causes the registrations to be conflicting. + instances. + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the registration that caused this warning. + An . + + + + Gets the list of registrations that are in conflict with the . + + A list of instances. + + + + Entry point for doing diagnostic analysis on instances. + + + The following example shows the usage of the Analyzer class: + + + + + + Analyzes the supplied instance. + + The container instance to analyze. + A collection of sub types that describe the diagnostic + warnings and messages. + + + + Diagnostic result for a warning about a concrete type that was not registered explicitly and was not + resolved using unregistered type resolution, but was created by the container using the transient + lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + Gets a collection of instances that describe all + container-registered dependencies for the given component. + List of objects. + + + + A hierarchical group of . + + + + + Gets the base that describes the service types of its + . The value often be either (in case this is a + root group) or a partial generic type to allow hierarchical grouping of a large number of related + generic types. + + The . + + + Gets the friendly name of the group. + The name. + + + Gets the description of the group. + The description. + + + Gets the diagnostic type of all grouped instances. + The . + + + Gets the parent or null (Nothing in VB) when this is the + root group. + The . + + + Gets the collection of child s. + A collection of elements. + + + Gets the collection of instances. + /// A collection of elements. + + + + Base class for types that hold information about a single diagnostic message or warning for a + particular type or part of the configuration. + + + + Gets the severity of this result. + The . + + + Gets the diagnostic type of this result. + The . + + + Gets the service type to which this warning is related. + A . + + + Gets the description of the diagnostic result. + A with the description. + + + Gets the documentation URL of the diagnostic result. + A with the URL. + + + Gets the hierarchical group to which this diagnostic result belongs. + The . + + + + Specifies the list of severity levels that diagnostic results can have. + + + + Information messages and tips about the configuration. + + + Warning messages that are likely to cause problems in your application. + + + + Specifies the list of diagnostic types that are currently supported by the diagnostic + . Note that new diagnostic types might be added in future versions. + For more information, please read the + Diagnosing your configuration using the Diagnostic + Services wiki documentation. + + + + + Diagnostic type that warns about + a concrete type that was not registered explicitly and was not resolved using unregistered type + resolution, but was created by the container using the transient lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + + Diagnostic type that warns when a + component depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + + Diagnostic type that warns when a + component depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + + Diagnostic type that warns when a component depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + + Diagnostic type that warns when multiple registrations map to the same component and + lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + + Diagnostic type that warns when a component is registered as transient, while implementing + . + For more information, see: https://simpleinjector.org/diadt. + + + + + Diagnostic type that warns when multiple registrations exist that map to the same component but + with different lifestyles, which will cause the component to be cached in different -possibly + incompatible- ways. + For more information, see: https://simpleinjector.org/diaal. + + + + + Diagnostic result for a warning about a component that is registered as transient, but implements + . + For more information, see: https://simpleinjector.org/diadt. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result for a warning about a + component that depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result that warns about a + component that depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + Gets the instance that describes the current relationship between the checked component + and the short-circuited dependency. + The . + + + + Gets the collection of registrations that have the component's current dependency as + implementation type, but have a lifestyle that is different than the current dependency. + + A collection of instances. + + + + Diagnostic result that warns about a component that depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + Gets the created type. + A . + + + Gets the list of registrations that are dependencies of the . + A collection of instances. + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + Gets the lifestyle on which instances are torn. + A . + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the list of registrations that are affected by this warning. + A list of instances. + + + + Thrown by the container in case of a diagnostic error. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message. + + The list of errors. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + Gets the list of instances. + A list of instances. + + + + Provides data for and interaction with the + ExpressionBuilding event of + the . An observer can change the + property to change the component that is + currently being built. + + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + + Gets the type that is known to be returned by the + Expression (most often the implementation + type used in the Register call). This type will be a derivative of + RegisteredServiceType (or + or RegisteredServiceType itself). If the Expression is changed, the new expression + must also return an instance of type KnownImplementationType or a sub type. + This information must be described in the new Expression. + + A . + + + Gets the lifestyle for the component that is currently being built. + The . + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Provides data for and interaction with the + ExpressionBuilt event of + the . An observer can change the + property to change the component that is currently + being built. + + + + Initializes a new instance of the class. + Type of the registered service. + The registered expression. + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + Gets or sets the current lifestyle of the registration. + The original lifestyle of the registration. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Helper methods for the container. + + + + + Contains contextual information about the direct consumer for which the given dependency is injected + into. + + + + Initializes a new instance of the class. + The constructor parameter for the created component. + + + Initializes a new instance of the class. + The implementation type of the consumer of the component that should be created. + The property for the created component. + + + Gets the service type of the consumer of the component that should be created. + The closed generic service type. + + + Gets the implementation type of the consumer of the component that should be created. + The implementation type. + + + + Gets the information about the consumer's target in which the dependency is injected. The target + can be either a property or a constructor parameter. + + The for this context. + + + + + + + + + + + + + + + + Discovers the attributes of the code element (a property or parameter) where a dependency will be + injected into, and provides access to its meta data. + + + + + Gets the constructor argument of the consumer of the component where the dependency will be + injected into. The property can return null. + + The or null when the dependency is injected into a property. + + + + + Gets the property of the consumer of the component where the dependency will be injected into. + The property can return null. + + The or null when the dependency is injected into a constructor + argument instead. + + + Gets the name of the target. + A string containing the name of the target. + + + Gets the type of the target. + A containing the type of the target. + + + Gets the member of the target. This is either the constructor of the parameter, or in + case the target is a property, the property itself will be returned. + A containing the type of the target. + + + + Returns an array of all of the custom attributes defined on either the or + the , excluding named attributes, or an empty array if there are no custom + attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + There is more than one attribute of type attributeType + defined on this member. + + + + Returns an array of custom attributes defined on either the or + the , identified by type, or an empty array if there are no custom + attributes of that type. + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + Thrown when attributeType is null. + + + + Indicates whether one or more instance of attributeType is defined on this either the + or the . + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + true if the attributeType is defined on this member; false otherwise. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The parameter to inspect. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The parameter to inspect.The parameter to inspect. + True to inspect the ancestors of element; otherwise, false. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The type of attribute to search for. + A custom attribute that matches attributeType, or null if no such attribute is found. + + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A custom attribute matching attributeType, or null if no such attribute is found. + + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter. + + The type of attribute to search for. + A collection of the custom attributes that are applied to element and that match T, or + an empty collection if no such attributes exist. + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter, and optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A collection of the custom attributes that are applied to element and that match T, or an + empty collection if no such attributes exist. + + + + + + + + + + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + GetCurrentRegistrations() or + GetRegistration(Type, bool). + + + The Register method overloads create InstanceProducer instances internally, but + InstanceProducers can be created manually to implement special scenarios. An + InstanceProducer wraps instance. The Registration builds an + that describes the intend to create the instance according to a certain + lifestyle. The InstanceProducer on the other hand transforms this Expression to a + delegate and allows the actual instance to be created. A Registration itself can't create any + instance. The InsanceProducer allows intercepting created instances by hooking onto the + Container.ExpressionBuilt event. The + RegisterDecorator methods for + instance work by hooking onto the ExpressionBuilt event and allow wrapping the returned instance + with a decorator. + + + The following example shows the creation of two different InstanceProducer instances that wrap + the same Registration instance. Since the Registration is created using the + Singleton lifestyle, both producers will return + the same instance. The InstanceProducer for the Interface1 however, will wrap that + instance in a (transient) Interface1Decorator. + (container); + + var producer1 = new InstanceProducer(typeof(Interface1), registration); + var producer2 = new InstanceProducer(typeof(Interface2), registration); + + container.RegisterDecorator(typeof(Interface1), typeof(Interface1Decorator)); + + var instance1 = (Interface1)producer1.GetInstance(); + var instance2 = (Interface2)producer2.GetInstance(); + + Assert.IsInstanceOfType(instance1, typeof(Interface1Decorator)); + Assert.IsInstanceOfType(instance2, typeof(ServiceImpl)); + + Assert.AreSame(((Interface1Decorator)instance1).DecoratedInstance, instance2); + ]]> + + + + Initializes a new instance of the class. + The service type for which this instance is created. + The . + + + + Gets the for this registration. The returned lifestyle can differ from the + lifestyle that is used during the registration. This can happen for instance when the registration + is changed by an ExpressionBuilt + registration or gets decorated. + + The for this registration. + + + Gets the service type for which this producer produces instances. + A instance. + + + Gets the instance for this instance. + The . + + + + Creates a new based on the given + and where the will be used as-is; + no interception (using ExpressionBuilt) such as + decorators will be applied. + + The service type for which this instance is created. + The expression that describes the instance to be produced. + The instance for this registration. + A new that describes the expression. + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + + Builds an expression that expresses the intent to get an instance by the current producer. A call + to this method locks the container. New registrations can't be made after a call to this method. + + An Expression. + + + + Gets the collection of relationships for this instance that the container knows about. + This includes relationships between the registered type and its dependencies and relationships + between applied decorators and their dependencies. Note that types that are not newed up by the + container and properties that are injected inside a custom delegate that is registered using the + RegisterInitializer + method are unknown to the container and are not returned from this method. + Also note that this method will return an empty collection when called before the + registered type is requested from the container (or before + Verify is called). + + An array of instances. + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + The various visualization options for building a string representation of + the object graph. + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + Thrown when options is null. + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + or . + + The service type. + + + Initializes a new instance of the class. + The . + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + A map containing a generic argument (such as T) and the concrete type (such as Int32) that it + represents. + + + + Implements equality. Needed for doing LINQ distinct operations. + The other to compare to. + True or false. + + + Overrides the default hash code. Needed for doing LINQ distinct operations. + An 32 bit integer. + + + + Container controlled collections can be supplied with both Type objects or direct Registration + instances. + + + + + Gets a message that describes the current exception. + + T + he error message that explains the reason for the exception, or an empty string(""). + + + + + Allows verifying whether a given type has a direct or indirect dependency on itself. Verifying is done + by preventing recursive calls to an InstanceProducer. A CyclicDependencyValidator instance checks a + single InstanceProducer and therefore a single service type. + + + + + Allows retrieving the concrete types of the generic type arguments of that must be used to create a + closed generic implementation of a given open generic implementation, based on on the concrete + arguments of the given closed base type. + + + + + Helper class for building closed generic type for a given open generic type and a closed generic base. + + + + Result of the GenericTypeBuilder. + + + + A open generic type with the concrete arguments that can be used to create a closed generic type. + + + + + Allows validating an ArgumentMapping. + + + + + Factory for the creation of a delegate that applies caching to the supplied + . + + A factory for creating new instances. + A factory that returns cached instances. + + + + Instances returned from the container can be cached. The contains several + overloads of the Register method that take a Lifestyle instance as argument to define + how returned instances should be cached. The core library contains two lifestyles out of the box. By + supplying Lifestyle.Transient, the registered instance is not + cached; a new instance is returned every time it is requested or injected. By supplying + Lifestyle.Singleton instances can be cached indefinitely; only + a single instance of the registered component will be returned by that container instance. Other + lifestyles are defined in integration and extension packages. The + CreateCustom method allows defining a custom lifestyle and + the CreateHybrid method + allows creating a lifestyle that mixes multiple other lifestyles. + + + This type is abstract and can be overridden to implement a custom lifestyle. + + + + + The lifestyle instance that doesn't cache instances. A new instance of the specified + component is created every time the registered service is requested or injected. + + + The following example registers the SomeServiceImpl implementation for the + ISomeService service type using the Transient lifestyle: + (Lifestyle.Transient); + ]]> + Note that Transient is the default lifestyle, the previous registration can be reduced to + the following: + (); + ]]> + + + + + + The lifestyle that caches components according to the lifetime of the container's configured + scoped lifestyle. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the active scope gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Scoped lifestyle: + (Lifestyle.Scoped); + ]]> + + + + + + The lifestyle that caches components during the lifetime of the instance + and guarantees that only a single instance of that component is created for that instance. Since + general use is to create a single Container instance for the lifetime of the application / + AppDomain, this would mean that only a single instance of that component would exist during the + lifetime of the application. In a multi-threaded applications, implementations registered using + this lifestyle must be thread-safe. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the container gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Singleton lifestyle: + (Lifestyle.Singleton); + ]]> + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the user friendly name of this lifestyle. + The user friendly name of this lifestyle. + + + + Gets the length of the lifestyle. Implementers must implement this property. The diagnostic + services use this value to compare lifestyles with each other to determine lifestyle + misconfigurations. + + The representing the length of this lifestyle. + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The lifestyle to use when + returns true. + The lifestyle to use when + returns false. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + lifestyle.GetCurrentScope(container) != null, + lifestyle, + Lifestyle.Transient); + + var mixedScopeLifestyle = Lifestyle.CreateHybrid( + () => HttpContext.Current != null, + new WebRequestLifestyle(), + mixedLifetimeTransientLifestyle); + ]]> + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Lifetime Scope and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The scoped lifestyle to use when + returns true. + The scoped lifestyle to use when + returns false. + A new scoped hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + + + + Creates a custom lifestyle using the supplied delegate. + + + The supplied will be called just once per registered + service. The supplied will be called by the framework + when the type is resolved for the first time, and the framework will supply the factory with a + Func<object> for creating new (transient) instances of that type (that might + have been intercepted and + initializers might have been applied). + It is the job of the to return a Func<object> + that applies the proper caching. The Func<object> that is returned by the + will be stored for that registration (every + registration will store its own Func<object> delegate) and this delegate will be + called every time the service is resolved (by calling + container.GetInstance<TService> or when that service is injected into another + type). + + The name of the lifestyle to create. The name is used to display the lifestyle + in the debugger. + A factory delegate that takes a Func<object> delegate + that will produce a transient instance and returns a delegate that returns cached instances. + A new . + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is an empty string. + + The following example shows the creation of a lifestyle that caches registered instances for 10 + minutes: + + { + TimeSpan timeout = TimeSpan.FromMinutes(10); + var syncRoot = new object(); + var expirationTime = DateTime.MinValue; + object instance = null; + + // If the application has multiple registrations using this lifestyle, each registration + // will get its own Func delegate (created here) and therefore get its own set + // of variables as defined above. + return () => + { + lock (syncRoot) + { + if (expirationTime < DateTime.UtcNow) + { + instance = instanceCreator(); + expirationTime = DateTime.UtcNow.Add(timeout); + } + + return instance; + } + }; + }); + + var container = new Container(); + + // We can reuse the created lifestyle for multiple registrations. + container.Register(customLifestyle); + container.Register(customLifestyle); + ]]> + + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified caching as + specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances instance using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + + The concrete type that will be registered. + The instance for which a + must be created. + A new or cached instance. + Thrown when is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + This method might fail when run in a partial trust sandbox when + is an internal type. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The delegate that will be responsible for creating new instances. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. An execution context scope flows with the logical execution context. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ExecutionContextScopeLifestyle class: + (Lifestyle.Scoped); + + using (AsyncScopedLifestyle.BeginScope(container)) + { + var instance1 = container.GetInstance(); + // ... + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + This lifestyle can be used to implement ambient context-less scoping in Simple Injector. This lifestyle + can be set as DefaultScopedLifestyle and later used via Lifestyle.Scoped to register scoped instances, + while instances are resolved via Scope.GetInstance. + + + + + Forwards CreateRegistration calls to the lifestyle that is returned from the registered + container.Options.LifestyleSelectionBehavior. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. A scope is thread-specific, each thread should define its own scope. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ThreadScopedLifestyle class: + (Lifestyle.Scoped); + + using (container.BeginLifetimeScope()) + { + var instance1 = container.GetInstance(); + + // This call will return the same instance. + var instance2 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance1, instance2)); + + // Create a nested scope. + using (container.BeginLifetimeScope()) + { + // A nested scope gets its own instance. + var instance3 = container.GetInstance(); + + Assert.IsFalse(object.ReferenceEquals(instance1, instance3)); + + // This call will return the same instance. + var instance4 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance3, instance4)); + } + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterConditional + overload that takes this delegate. This type contains information about the open generic service that + is about to be created and it allows the user to examine the given instance to decide whether this + implementation should be created or not. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the closed generic implementation type that will be created by the container. + + The implementation type. + + + Gets a value indicating whether a previous Register registration has already + been applied for the given . + The indication whether the event has been handled. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + A Registration implements lifestyle based caching for a single service and allows building an + that describes the creation of the service. + + + implementations create a new Registration instance for each registered + service type. s returned from the + BuildExpression method can be + intercepted by any event registered with , have + initializers + applied, and the caching particular to its lifestyle have been applied. Interception using the + Container.ExpressionBuilt will not + be applied in the Registration, but will be applied in . + + See the documentation for an example. + + + + + Initializes a new instance of the class. + + The this that created this registration. + The instance for this registration. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Gets the type that this instance will create. + The type that this instance will create. + + + Gets the this that created this registration. + The this that created this registration. + + + Gets the instance for this registration. + The instance for this registration. + + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. The default is false. Having a value of false, does not force an + instance to be disposed of, though; Transient instances, for instance, will never be disposed of. + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. + + + + Gets or sets a value indicating whether this registration object contains a user + supplied instanceCreator factory delegate. + + + + Builds a new with the correct caching (according to the specifications of + its ) applied. + + An . + + + + Gets the list of instances. Note that the list is only available + after calling . + + A new array containing the instances. + + + + Initializes an already created instance and applies properties and initializers to that instance. + + + This method is especially useful in integration scenarios where the given platform is in control + of creating certain types. By passing the instance created by the platform to this method, the + container is still able to apply any properties (as defined using a custom + ) and by applying any initializers. + + The instance to initialize. + Thrown when is a null + reference (Nothing in VB). + Thrown when the supplied is not + of type . + + + + Suppressing the supplied for the given registration. + + The . + The justification of why the warning must be suppressed. + Thrown when is a null + reference. + Thrown when either is an + empty string or when is not a valid value of . + + + + + Builds a delegate for the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers + that are applicable to the given (if any). + + The interface or base type that can be used to retrieve instances. + + The delegate supplied by the user that allows building or creating new instances. + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds a delegate for the creation of . + The returned might be intercepted by a + Container.ExpressionBuilding event, + and the creation of the will have been wrapped with a + delegate that executes the registered + initializers + that are applicable to the given (if any). + + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds an that describes the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers that are + applicable to the given (if any). + + + The interface or base type that can be used to retrieve instances. + + + The delegate supplied by the user that allows building or creating new instances. + An . + Thrown when one of the arguments is a null reference. + + + + + Builds an that describes the creation of . + The returned might be intercepted + by a Container.ExpressionBuilding + event, and the creation of the will have been wrapped with + a delegate that executes the registered + initializers that are applicable + to the InstanceProducer's ServiceType (if any). + + An . + Thrown when one of the arguments is a null reference. + + + Implements a cache for implementations. + + is thread-safe can be used over multiple threads concurrently, but note that the + cached instances might not be thread-safe. + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The container instance that the scope belongs to. + + + Gets the container instance that this scope belongs to. + The instance. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Adds the to the list of items that will get disposed when the + scope ends. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances are returned + in order of creation/registration. When Scope.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be disposed in opposite + order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + Releases all instances that are cached by the object. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType -or- null if there is no service object of type + . + + + + Releases all instances that are cached by the object. + + False when only unmanaged resources should be released. + + + + Base class for scoped lifestyles. A scoped lifestyle caches instances for the duration of an implicitly + or explicitly defined scope. Such scope can be an (implicitly defined) web request or an explicitly + defined Lifetime Scope. The lifetime of instances registered with a scoped lifestyle is always equal + or bigger than one-instance-per-object-graph. In other words, a call to GetInstance() will never create + more than one instance of such registered type. + + + + + Gets the scoped lifestyle that allows Scoped registrations to be resolved direclty from the + by calling . This allows multiple + scopes to be active and overlap within the same logical context, such as a single thread, or an + asynchronous context. + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Signals the lifestyle whether instances should be + disposed or not. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the length of the lifestyle. + The representing the length of this lifestyle. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The instance. + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Adds the to the list of items that will get disposed when the + scope ends. + + The instance. + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method should never return null. + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + + By default, this method calls the method and invokes the + returned delegate. This method can be overridden to provide an optimized way for getting the + current scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + Internal helper for string resources. + + + + Contains contextual information for creating an implementation type. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + Returns a list of base types and interfaces of implementationType that either + equal to serviceType or are closed or partially closed version of serviceType (in case + serviceType itself is generic). + So: + -in case serviceType is non generic, only serviceType will be returned. + -If implementationType is open generic, serviceType will be returned (or a partially closed + version of serviceType is returned). + -If serviceType is generic and implementationType is not, a closed version of serviceType will + be returned. + -If implementationType implements multiple (partially) closed versions of serviceType, all those + (partially) closed versions will be returned. + + The (open generic) service type to match. + The implementationType to search. + A list of types. + + + Useful extensions on . + + + + Builds an easy to read type name. Namespaces will be omitted, and generic types will be displayed + in a C#-like syntax. Ideal for reporting type names in exception messages. + + The type to convert. + A human-readable string representation of that type. + Thrown when the supplied argument is a null reference. + + + + Returns true is there is a closed version of the supplied + that is assignable from the current . This method returns true when either + itself, one of its base classes or one of its implemented interfaces is a + closed version of ; otherwise false. + + The type to check. + The generic type definition to match. + True when type is assignable; otherwise false. + + + + Gets the single closed version of that the current + is assignable from. In case none or multiple matching closed types are + found, and exception is thrown. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + The matching closed type. + Thrown when one of the arguments is a null reference. + Thrown when is not + a generic type or when none of the base classes or implemented interfaces of + are closed-versions of . + Thrown when multiple matching closed generic types + are found. + + + + Gets the list of closed versions of that the current + is assignable from. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + A list of matching closed generic types. + + + + Defines options to control the types returned from the + GetTypesToRegister + method. For a type to be returned, it should match all the conditions described by the class's + properties. In other words, in case the searched assembly contains a generic type, that is both a + decorator and a composite, it will only be returned by GetTypesToRegister in case both + , and + are set to true. + + + + Initializes a new instance of the class. + + + + Gets or sets a value indicating whether decorator types should be included in the result. The default + value of this property is false. A type is considered a decorator if the type's constructor + contains a parameter of the type that exactly matches the serviceType argument, + supplied to the + GetTypesToRegister + method, or when there is a argument where T matches the + serviceType argument. + + A boolean. + + + + Gets or sets a value indicating whether generic type definitions (types that have + TypeInfo.IsGenericTypeDefinition + set to true) + should be included in the result. The default value for this property is false. + + A boolean. + + + + Gets or sets a value indicating whether composite types should be included in the result. The default + value of this property is true. A type is considered a composite if the type's constructor + contains a parameter of IEnumerable<T>, ICollection<T>, + IList<T>, IReadOnlyCollection<T>, + IReadOnlyList<T> or T[] (array of T), where T + exactly matches the serviceType argument, supplied to the + GetTypesToRegister + method. + + A boolean. + + + + Provides data for and interaction with the + ResolveUnregisteredType event of + the . An observer can check the + to see whether the unregistered type can be handled. The + method can be called to register a delegate + that allows creation of instances of the unregistered for this and future requests. + + + + Gets the unregistered service type that is currently requested. + The unregistered service type that is currently requested. + + + + Gets a value indicating whether the event represented by this instance has been handled. + This property will return true when has been called on + this instance. + + The indication whether the event has been handled. + + + + Registers a delegate that allows creation of instances of the type + expressed by the for this and future requests. The delegate + will be caches and future requests will directly call that delegate. + + The delegate that allows creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers an that describes the creation of instances of the type + expressed by the for this and future requests. The delegate + will be cached and future requests will directly use that expression or the compiled delegate. + + + NOTE: If possible, use the Register(Registration) overload, + since this allows the analysis services to determine any configuration errors on the lifestyle of + the registration. + + The expression that describes the creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers a that describes the creation of instances of the type + expressed by the for this and future requests. The + registration will be cached and future requests will directly call unon that registration, the + expression that it generates or the delegate that gets compiled from that expression. + + The registration that describes the creation of instances according to + the registration's lifestyle of the type expressed by the . + Thrown when the is a + null reference. + Thrown when the is a + not exactly of type where T equals the . + + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + This enumeration defines in which way the container should run the verification process. + + + + + Specifies that the container performs verification only, which means that it will test whether + all registrations can be constructed by iterating the registrations and letting the container + create at least one instance of each registration. An + will be thrown in case the configuration is invalid. + + + + + Specifies that the container will run diagnostic analysis after the verification succeeded. The + container will diagnose the configuration with a subset of the available diagnostic warnings, that + are most likely an indication of a configuration mistake. A complete set of diagnostic warnings + can be retrieved by calling + Analyzer.Analyze or by viewing the + container in the Visual Studio debugger, after the verification has succeeded. + + + + + Visualization options for providing various information about instances. + + + + + Gets or sets a value indicating whether to include lifestyle information in the visualization. + + The value to include life style information. + + + + Gets or sets a value indicating whether to use fully qualified type names in the visualization. + + The value to use fully qualified type names. + + + diff --git a/packages/SimpleInjector.4.9.1/lib/netstandard2.0/SimpleInjector.dll b/packages/SimpleInjector.4.9.1/lib/netstandard2.0/SimpleInjector.dll new file mode 100644 index 0000000..9a4e2e4 Binary files /dev/null and b/packages/SimpleInjector.4.9.1/lib/netstandard2.0/SimpleInjector.dll differ diff --git a/packages/SimpleInjector.4.9.1/lib/netstandard2.0/SimpleInjector.xml b/packages/SimpleInjector.4.9.1/lib/netstandard2.0/SimpleInjector.xml new file mode 100644 index 0000000..188a783 --- /dev/null +++ b/packages/SimpleInjector.4.9.1/lib/netstandard2.0/SimpleInjector.xml @@ -0,0 +1,6167 @@ + + + + SimpleInjector + + + + + The standard exception thrown when a container has an error in resolving an object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + + Extension methods for enable advanced scenarios. + + + + + Determines whether the specified container is locked making any new registrations. The container + is automatically locked when GetInstance is called for the + first time. + + The container. + + true if the specified container is locked; otherwise, false. + + Thrown when is null. + + + Determines whether the specified container is currently verifying its configuration. + The container. + true if the specified container is verifying; otherwise, false. + Thrown when is null. + + + + Retrieves an item from the container stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The container. + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Stores an item by the given in the container. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The container. + The key of the item to insert or override. + The actual item. May be null. + Thrown when either or + is a null reference (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The container. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either , + or is a null reference (Nothing in VB). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The container. + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Common base class for Simple Injector API classes. + + + + + + + + + + + + + Gets the of the current instance. + The instance that represents the exact runtime + type of the current instance. + + + Deprecation extensions. + + + + This interface method has been removed. Please call GetInstanceProducerFor instead. + + The behavior. + The consumer. + Throws an exception. + + + + This interface method has been removed. Please call SelectProperty(PropertyInfo) instead. + + The behavior. + Type of the abstraction that is requested. + The property to check. + True when the property should be injected. + + + + Defines the container's behavior for finding a suitable constructor for the creation of a type. + Set the ConstructorResolutionBehavior + property of the container's property to change the default behavior + of the container. + + + + + Gets the given 's constructor that can be used by the + container to create that instance. + + Type of the implementation to find a suitable constructor for. + + The . This method never returns null. + + Thrown when no suitable constructor could be found. + + + + Defines the container's behavior for building an expression tree for an dependency to inject, based on + the information of the consuming type the dependency is injected into. + Set the ConstructorInjectionBehavior + property of the container's property to change the default behavior + of the container. + + + + Verifies the specified . + Contextual information about the consumer where the built dependency is + injected into. + + Thrown when the type of the target supplied with + the supplied cannot be used for auto wiring. + Thrown when the supplied argument is a null reference. + + + + Gets the for the + Target of the supplied . + + Contextual information about the consumer where the built dependency is + injected into. + The indication whether the method should return null or throw + an exception when the type is not registered. + An that describes the intend of creating that + Target. This method never returns null. + Thrown when the argument is a null reference. + + + + Defines the container's behavior for selecting the lifestyle for a registration in case no lifestyle + is explicitly supplied. + Set the LifestyleSelectionBehavior + property of the container's property to change the default behavior + of the container. By default, when no lifestyle is explicitly supplied, the + Transient lifestyle is used. + + + + Selects the lifestyle based on the supplied type information. + Type of the implementation to that is registered. + The suited for the given type. + Thrown when either one of the arguments is a null reference. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterResolveInterceptor + method that takes this delegate. This type contains contextual information about a resolved type and it + allows the user to examine the given instance to decide whether the + should be applied or not. + + + + + Gets the that is responsible for the initialization of the created + instance. + + The or null (Nothing in VB) when the instance producer is + unknown. + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterInitializer + overload that takes this delegate. This type contains contextual information about the creation and it + allows the user to examine the given instance to decide whether the instance should be initialized or + not. + + + + + Gets a null reference. This property has been deprecated. + + The null (Nothing in VB). + + + + Gets the that is responsible for the initialization of the created + instance. + + /// The . + + + + Contains data that can be used to initialize a created instance. This data includes the actual + created and the information about the created instance. + + + + Initializes a new instance of the struct. + The that contains contextual information + about the created instance. + The created instance. + + + Gets the with contextual information about the + created instance. + The . + + + Gets the created instance. + The created instance. + + + + + + + + + + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + True if a and b are equal; otherwise, false. + + + + Indicates whether the values of two specified objects are + not equal. + + The first object to compare. + The second object to compare. + True if a and b are not equal; otherwise, false. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + + + Initializes a new instance of the struct. + The scope factory. + The container. + + + Gets the lazily initialized Scope of the current LazyScope instance. + The current Scope or null. + + + + This is an internal type. Only depend on this type when you want to be absolutely sure a future + version of the framework will break your code. + + Implementation type. + + + + Initializes a new instance of the + struct. + The registration. + + + + Gets the lazily initialized instance for the of the current LazyScopedRegistration. + + The scope that is used to retrieve the instance. + The cached instance. + + + + Defines the container's behavior for selecting properties to inject during the creation of a type. + Set the PropertySelectionBehavior + property of the container's property to change the default behavior + of the container. By default, no properties will be injected by the container. + + + + + Determines whether a property should be injected by the container upon creation of its type. + + + The type being created for which the property should be injected. Note that this might a + different type than the type on which the property is declared (which might be a base class). + The property to check. + True when the property should be injected. + + + + A known relationship defines a relationship between two types. The Diagnostics Debug View uses this + information to spot possible misconfigurations. + + + + Initializes a new instance of the class. + The implementation type of the parent type. + The lifestyle of the parent type. + The type that the parent depends on (it is injected into the parent). + + + Gets the implementation type of the parent type of the relationship. + The implementation type of the parent type of the relationship. + + + Gets the lifestyle of the parent type of the relationship. + The lifestyle of the parent type of the relationship. + + + Gets the type that the parent depends on (it is injected into the parent). + The type that the parent depends on. + + + + + + + + + + + + + The container. Create an instance of this type for registration of dependencies. + + + + Thread-safety: + Resolving instances can be done safely from multiple threads concurrently, but registration needs to + be done from one single thread. + + + It is therefore safe to call , , + GetService, and + and anything related to resolving instances from multiple thread + concurrently. It is however unsafe to call + RegisterXXX, + , , , + or anything related to registering from multiple threads concurrently. + + + Methods for batch registration. + Methods for registration of collections. + Methods for conditional registrations. + + These conditional registration methods lack a Func{PredicateContext, TService} predicate + method. This is deliberate, because would force the factory to be registered as transient, forcing + the whole parent structure to become transient as well. Besides this, it would blind the diagnostic + system, because it will stop at the delegate, instead of being able to analyze the object graph as + a whole. + + Methods for registration. + Methods for registration of decorators. + Methods for resolving instances. + Methods for verifying the container. + + + Initializes a new instance of the class. + + + Gets the container options. + The instance for this container. + + + Gets the container scope that that manages the lifetime of singletons and other + container-controlled instances. Use this property to register actions that need to be called + and instances that need to be disposed when the container gets disposed. + The instance for this container. + + + + Gets a value indicating whether the container is currently being verified on the current thread. + + True in case the container is currently being verified on the current thread; otherwise + false. + + + + Gets the intermediate lifestyle that forwards CreateRegistration calls to the lifestyle that is + returned from the registered container.Options.LifestyleSelectionBehavior. + + + + + Returns an array with the current registrations. This list contains all explicitly registered + types, and all implicitly registered instances. Implicit registrations are all concrete + unregistered types that have been requested, all types that have been resolved using + unregistered type resolution (using the event), and + requested unregistered collections. Note that the result of this method may change over time, + because of these implicit registrations. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + + + + Returns an array with the current registrations for root objects. Root objects are registrations + that are in the root of the object graph, meaning that no other registration is depending on it. + + + + This method has a performance characteristic of O(n). Prevent from calling this in a performance + critical path of the application. + + + This list contains the root objects of all explicitly registered types, and all implicitly + registered instances. Implicit registrations are all concrete unregistered types that have been + requested, all types that have been resolved using unregistered type resolution (using the + event), and requested unregistered collections. Note that + the result of this method may change over time, because of these implicit registrations. + + + Note: This method is not guaranteed to always return the same + instance for a given registration. It will however either + always return a producer that is able to return the expected instance. Because of this, do not + compare sets of instances returned by different calls to + by reference. The way of comparing lists is by the actual type. The type of each instance is + guaranteed to be unique in the returned list. + + + An array of instances. + Thrown when this method is called before + has been successfully called. + + + Releases all instances that are cached by the object. + + + Prevents any new registrations to be made to the container. + + + Releases all instances that are cached by the object. + True for a normal dispose operation; false to finalize the handle. + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with container's default lifestyle (which is transient by default). + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + An assembly that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with the supplied . + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the transient lifestyle. + + The definition of the open generic type. + A list types to be registered. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all supplied based on the closed-generic version + of the given with the given . + + The definition of the open generic type. + A list types to be registered. + The lifestyle to register instances with. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type or when one of the supplied types from the + collection does not derive from + . + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic, public and internal types in the given set of + that implement the given + with lifestyle. + Decorators and + generic type definitions + will be excluded from registration, while + composites are included. + + The definition of the open generic type. + A list of assemblies that will be searched. + Thrown when one of the arguments contain a null + reference (Nothing in VB). + Thrown when is not + an open generic type. + Thrown when the given set of + contain multiple types that implement the same + closed generic version of the given . + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + assemblies = new[] { typeof(ILogger).Assembly }; + var types = container.GetTypesToRegister(assemblies) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + + + Use this method when you need influence the types that are registered using + Container.Collections.Register. + The Collections.Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ( + typeof(ILogger).Assembly, + typeof(FileLogger).Assembly) + .Where(type => type.IsPublic); + + container.Collections.Register(types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ILogger interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Container.Collections.Register<TService>(IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + A collection of types. + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete non-generic types that are located in the supplied + and implement or inherit from the supplied . + can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register or + Collections.Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Returns all concrete types that are located in the supplied + and implement or inherit from the supplied and match the specified + . can be an open-generic type. + + + Use this method when you need influence the types that are registered using + Register. + The Register overloads that take a collection of + objects use this method internally to get the list of types that need to be registered. Instead of + calling such overload, you can call an overload that takes a list of objects + and pass in a filtered result from this GetTypesToRegister method. + ).Assembly }; + var options = new TypesToRegisterOptions { IncludeGenericTypeDefinitions: true }; + var types = container.GetTypesToRegister(typeof(ICommandHandler<>), assemblies, options) + .Where(type => type.IsPublic); + + container.Register(typeof(ICommandHandler<>), types); + ]]> + This example calls the GetTypesToRegister method to request a list of concrete implementations + of the ICommandHandler<T> interface from the assembly of that interface. After that + all internal types are filtered out. This list is supplied to the + Register(Type, IEnumerable<Type>) + overload to finish the registration. + + The base type or interface to find derived types for. This can be both + a non-generic and open-generic type. + A list of assemblies that will be searched. + The options. + A collection of types. + Thrown when one of the arguments contain a null reference + (Nothing in VB). + + + + Registers a dynamic (container-uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + + The container-uncontrolled collection to register. + + + Thrown when this container instance is locked and can not be altered, or when a + for has already + been registered. + + + Thrown when is a null reference. + + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + + Thrown when one of the arguments is a null reference (Nothing in VB). + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that a new instance of will be + returned every time a is requested (transient) and where the + supplied returns true. The predicate will only be evaluated a finite + number of times; the predicate is unsuited for making decisions based on runtime conditions. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of will be + returned every time a is requested and where the supplied + returns true. The instance is cached according to the supplied + . The predicate will only be evaluated a finite number of times; the + predicate is unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when and + are not a generic type or when + is a partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that an instance of the type returned from + will be returned every time a + is requested and where the supplied + returns true. The instance is cached according to the supplied + . Both the and + will only be evaluated a finite number of times; + they unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + A factory that allows building Type objects that define the + implementation type to inject, based on the given contextual information. The delegate is allowed + to return (partially) open-generic types. + The lifestyle that defines how returned instances are cached. + The predicate that determines whether the registration can be applied for + the requested service type. This predicate can be used to build a fallback mechanism where + multiple registrations for the same service type are made. + Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is a + partially-closed generic type. + + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + + Thrown when this container instance is locked and can not be altered. + + + + + Conditionally registers that will be used every time a + is requested and where the supplied + returns true. The predicate will only be evaluated a finite number of times; the predicate is + unsuited for making decisions based on runtime conditions. + + The base type or interface to register. This can be an open-generic type. + + The instance to register. + The predicate that determines whether the + can be applied for the requested service type. This predicate + can be used to build a fallback mechanism where multiple registrations for the same service type + are made. Note that the predicate will be called a finite number of times and its result will be cached + for the lifetime of the container. It can't be used for selecting a type based on runtime conditions. + + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is open generic or + is not assignable to . + + Thrown when this container instance is locked and can not be altered. + + + + + Occurs when an instance of a type is requested that has not been registered explicitly, allowing + resolution of unregistered types before the container tries to create the type. + + + + The event is called by the container every time an + unregistered type is requested for the first time, allowing a developer to do unregistered type + resolution. By calling the + Register method on the + , a , or + delegate can be registered allowing the container to retrieve + instances of the requested type. This registration is cached and it prevents the + ResolveUnregisteredType event from being called again for the same type. + + + When no registered event handled the registration of an unregistered type, the container will try + to create the type when this type is either concrete or is the + interface. Concrete types will be registered with the Transient + lifestyle and registrations will return an empty collection. When no + even handled the registration and the container could not create it, an exception is thrown. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once. While the calls to for a given type + are finite (and will in most cases happen just once), a container can call the delegate multiple + times and make parallel calls to the delegate. You must make sure that the code can be called + multiple times and is thread-safe. + + + + The following example shows the usage of the event: + + { + void Validate(T instance); + } + + // Implementation of the null object pattern. + public class EmptyValidator : IValidator + { + public void Validate(T instance) + { + // Does nothing. + } + } + + [TestMethod] + public void TestResolveUnregisteredType() + { + // Arrange + var container = new Container(); + + // Register an EmptyValidator to be returned when a IValidator is requested: + container.ResolveUnregisteredType += (sender, e) => + { + if (e.UnregisteredServiceType.IsGenericType && + e.UnregisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var validatorType = typeof(EmptyValidator<>).MakeGenericType( + e.UnregisteredServiceType.GetGenericArguments()); + + // Register the instance as singleton. + e.Register(Lifestyle.Singleton.CreateRegistration(validatorType, container)); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(EmptyValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(EmptyValidator)); + } + ]]> + + The example above registers a delegate that is raised every time an unregistered type is requested + from the container. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will request the container for a concrete EmptyValidator<T> implementation that + implements the given + UnregisteredServiceType, and + registers a delegate that will return this created instance. The e.Register call + registers the method in the container, preventing the from + being called again for the exact same service type, preventing any performance penalties. + + + Please note that given example is just an uhhmm... example. In the case of the example the + EmptyValidator<T> can be better registered using of the built-in + Register methods instead. These methods take + care of any given generic type constraint and allow the implementation to be integrated into the + container's pipeline, which allows it to be intercepted using the + event and allow any registered initializers to be + applied. + + + + + + Occurs after the creation of the of a registered type is complete (the + lifestyle has been applied), allowing the created to be wrapped, + changed, or replaced. Multiple delegates may handle the same service type. + + + + The ExpressionBuilt event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilt event, can change the + property on the + , which allows changing the way the type is constructed. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to for a + given type are finite (and will in most cases happen just once), a container can call the delegate + multiple times and make parallel calls to the delegate. You must make sure that the code can be + called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilt event: + + { + void Validate(T instance); + } + + public interface ILogger + { + void Write(string message); + } + + // Implementation of the decorator pattern. + public class MonitoringValidator : IValidator + { + private readonly IValidator validator; + private readonly ILogger logger; + + public MonitoringValidator(IValidator validator, ILogger logger) + { + this.validator = validator; + this.logger = logger; + } + + public void Validate(T instance) + { + this.logger.Write("Validating " + typeof(T).Name); + this.validator.Validate(instance); + this.logger.Write("Validated " + typeof(T).Name); + } + } + + [TestMethod] + public void TestExpressionBuilt() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + container.Register, OrderValidator>(); + container.Register, CustomerValidator>(); + + // Intercept the creation of IValidator instances and wrap them in a MonitoringValidator: + container.ExpressionBuilt += (sender, e) => + { + if (e.RegisteredServiceType.IsGenericType && + e.RegisteredServiceType.GetGenericTypeDefinition() == typeof(IValidator<>)) + { + var decoratorType = typeof(MonitoringValidator<>) + .MakeGenericType(e.RegisteredServiceType.GetGenericArguments()); + + // Wrap the IValidator in a MonitoringValidator. + e.Expression = Expression.New(decoratorType.GetConstructors()[0], new Expression[] + { + e.Expression, + container.GetRegistration(typeof(ILogger)).BuildExpression(), + }); + } + }; + + // Act + var orderValidator = container.GetInstance>(); + var customerValidator = container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(orderValidator, typeof(MonitoringValidator)); + Assert.IsInstanceOfType(customerValidator, typeof(MonitoringValidator)); + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks whether the requested type is a closed generic + implementation of the IValidator<T> interface (such as + IValidator<Order> or IValidator<Customer>). In that case it + will changes the current with a new one that creates + a new MonitoringValidator<T> that takes the current validator (and an ILogger) + as an dependency. + + + Please note that given example is just an uhhmm... example. In the case of the example the + MonitoringValidator<T> is a decorator and instead of manually writing this code that + many limitations, you can use one of the built-in + RegisterDecorator methods instead. + These extension methods take care of any given generic type constraint, allow to register decorators + conditionally and allow the decorator to be integrated into the container's pipeline, which allows + it to be intercepted using the event and allow any registered + initializers to be applied. + + + + + + Occurs directly after the creation of the of a registered type is made, + but before any initializer and lifestyle specific caching + has been applied, allowing the created to be altered. Multiple delegates + may handle the same service type. + + + + The ExpressionBuilding event is called by the container every time an registered type is + getting compiled, allowing a developer to change the way the type is created. The delegate that + hooks to the ExpressionBuilding event, can change the + property on the + , which allows changing the way the type is constructed. + + + The exact type supplied depends on the type of registration. + Registrations that explicitly supply the implementation type (such as + Register<TService, TImplementation>()) + will result in an , while registrations that take a delegate (such as + Register<TService>(Func<TService>)) + will result in an . Singletons that are passed in using their + value (RegisterInstance<TService>(TService)) + will result in an . Note that other ExpressionBuilding + registrations might have changed the + property and might have supplied an of a different type. The order in + which these events are registered might be of importance to you. + + + Thread-safety: Please note that the container will not ensure that the hooked delegates + are executed only once per service type. While the calls to registered ExpressionBuilding + events for a given type are finite (and will in most cases happen just once), a container can + call the delegate multiple times and make parallel calls to the delegate. You must make sure that + the code can be called multiple times and is thread-safe. + + + + The following example shows the usage of the ExpressionBuilding event: + + { + var expression = e.Expression as NewExpression; + + if (expression != null) + { + var propertiesToInject = + from property in expression.Constructor.DeclaringType.GetProperties() + where property.GetCustomAttributes(typeof(MyInjectPropertyAttribute), true).Any() + let registration = container.GetRegistration(property.PropertyType, true) + select Tuple.Create(property, registration); + + if (propertiesToInject.Any()) + { + Func[], object> injectorDelegate = + (instance, dependencies) => + { + foreach (var dependency in dependencies) + { + dependency.Item1.SetValue(instance, dependency.Item2.GetInstance(), null); + } + + return instance; + }; + + e.Expression = Expression.Convert( + Expression.Invoke( + Expression.Constant(injectorDelegate), + e.Expression, + Expression.Constant(propertiesToInject.ToArray())), + expression.Constructor.DeclaringType); + } + } + }; + } + ]]> + + The example above registers a delegate that is raised every time the container compiles the + expression for an registered type. The delegate checks if the type contains properties that are + decorated with the supplied MyInjectPropertyAttribute. If decorated properties are found, + the given expression is replaced with an expression that injects decorated properties. + + + + + Gets the object that allows access to methods related to registration and creation of collections. + The instance for this container. + + + This property is obsolete. Please use instead. + The instance for this container. + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that an instance of will be returned when it + is requested. The instance is cached according to the supplied . + + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a new instance of will be returned every time a + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers that an instance of will be returned when an + instance of type is requested. The instance is cached according to + the supplied . + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning transient instances of + . The delegate is expected to always return a new instance on + each call. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers that a new instance of will be returned every time it + is requested (transient). + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The concrete type that will be registered. This can be an open-generic type. + Thrown when is a null + references (Nothing in VB). + Thrown when represents + a type that can not be created by the container. + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that a new instance of will be returned every time a + is requested. If and + represent the same type, the type is registered by itself. + Open and closed generic types are supported. + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when or + are null references (Nothing in VB). + Thrown when is + no sub type from (or the same type). + + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers that an instance of type will be returned when an + instance of type is requested. The instance is cached according to + the supplied . Open and closed generic types are supported. + + The interface or base type that can be used to retrieve the instances. + This can be an open-generic type. + The concrete type that will be registered. + This can be an open-generic type. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container, when either + or are open generic types, or when + is not assignable from the . + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + + Registers the specified delegate that allows returning instances of . + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + The base type or interface to register. + The delegate that will be used for creating new instances. + Thrown when either or + are null references (Nothing in VB). + Thrown when represents an + open generic type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that will produce instances of + type and will be returned when an instance of type + is requested. The delegate is expected to produce new instances on + each call. The instances are cached according to the supplied . + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when one of the supplied arguments is a null reference (Nothing in VB). + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use the overload that accepts a delegate. + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The interface or base type that can be used to retrieve the instance. + The instance to register. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + Thrown when is a null reference. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single instance that will be returned when an instance of type + is requested. This must be thread-safe + when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container, since the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton(Type, Func<object>). + + The base type or interface to register. + The instance to register. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from . + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers a single concrete instance that will be constructed using constructor injection and will + be returned when this instance is requested by type . + This must be thread-safe when working in a multi-threaded + environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when + has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that the same a single instance of type will be + returned every time an type is requested. If + and represent the same + type, the type is registered by itself. must be thread-safe + when working in a multi-threaded environment. + If implements , a created instance will + get disposed when Container.Dispose gets called. + + + The interface or base type that can be used to retrieve the instances. + + The concrete type that will be registered. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows constructing a single instance of + . This delegate will be called at most once during the lifetime of + the application. The returned instance must be thread-safe when working in a multi-threaded + environment. + If the instance returned from implements , + the created instance will get disposed when Container.Dispose + gets called. + + The interface or base type that can be used to retrieve instances. + The delegate that allows building or creating this single + instance. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a + null reference. + + + + Registers that the same instance of type will be returned every + time an instance of type type is requested. If + and represent the same type, the + type is registered by itself. must be thread-safe when working + in a multi-threaded environment. Open and closed generic types are supported. + + The base type or interface to register. + This can be an open-generic type. + The actual type that will be returned when requested. + This can be an open-generic type. + Thrown when either or + are null references (Nothing in VB). + Thrown when is + no sub type from , or when one of them represents an open generic + type. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers the specified delegate that allows constructing a single + instance. The container will call this delegate at most once during the lifetime of the application. + + The base type or interface to register. + The delegate that will be used for creating that single instance. + Thrown when represents an open + generic type. + Thrown when either or + are null references (Nothing in + VB). + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Registers an delegate that runs after the creation of instances that + implement or derive from the given . Please note that only instances + that are created by the container (using constructor injection) can be initialized this way. + + The type for which the initializer will be registered. + The delegate that will be called after the instance has been + constructed and before it is returned. + + Thrown when the is a null reference. + + + Thrown when this container instance is locked and can not be altered. + + + Multiple delegates can be registered per + and multiple initializers can be applied on a created instance, + before it is returned. For instance, when registering a + for type , the delegate will be called for every instance created by + the container, which can be nice for debugging purposes. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + The following example shows the usage of the + RegisterInitializer method: + + (); + + // Configuring property injection for types that implement ICommand: + container.RegisterInitializer(command => + { + command.SendAsync = true; + }); + + // Configuring property injection for types that implement CommandBase: + container.RegisterInitializer(command => + { + command.Clock = container.GetInstance(); + }); + + // Act + var command = (ConcreteCommand)container.GetInstance(); + + // Assert + // Because ConcreteCommand implements both ICommand and CommandBase, + // both the initializers will have been executed. + Assert.IsTrue(command.SendAsync); + Assert.IsNotNull(command.Clock); + } + ]]> + + The container does not use the type information of the requested service type, but it uses the + type information of the actual implementation to find all initialized that apply for that + type. This makes it possible to have multiple initializers to be applied on a single returned + instance while keeping performance high. + + + Registered initializers will only be applied to instances that are created by the container self + (using constructor injection). Types that are newed up manually by supplying a + delegate to the container (using the + method) or registered as single instance + (using ) will not trigger initialization. + When initialization of these instances is needed, this must be done manually, as can be seen in + the following example: + commandInitializer = command => + { + initializerCallCount++; + }); + + // Configuring that initializer. + container.RegisterInitializer(commandInitializer); + + container.Register(() => + { + // Create a ConcreteCommand manually: will not be initialized. + var command = new ConcreteCommand("Data Source=.;Initial Catalog=db;"); + + // Run the initializer manually. + commandInitializer(command); + + return command; + }); + + // Act + var command = container.GetInstance(); + + // Assert + // The initializer will only be called once. + Assert.AreEqual(1, initializerCallCount); + } + ]]> + The previous example shows how a manually created instance can still be initialized. Try to + prevent creating types manually, by changing the design of those classes. If possible, create a + single public constructor that only contains dependencies that can be resolved. + + + + + + Registers an delegate that runs after the + creation of instances for which the supplied returns true. Please + note that only instances that are created by the container can be initialized this way. + + The delegate that will be called after the instance has been + constructed and before it is returned. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + Note: Initializers are guaranteed to be executed in the order they are registered. + + + Note: The is not guaranteed to be called once per registration; + when a registration's instance is requested for the first time simultaneously over multiple thread, + the predicate might be called multiple times. The caller of this method is responsible of supplying + a predicate that is thread-safe. + + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is ambiguous, + when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Adds the for the supplied . This + method can be used to apply the same to multiple different service + types. + + The base type or interface to register. + The registration that should be stored for the given + . + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Act + IFoo foo = container.GetInstance(); + IBar bar = container.GetInstance(); + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + + In the example above a singleton registration is created for type FooBar and this + registration is added to the container for each interface (IFoo and IBar) that it + implements. Since both services use the same singleton registration, requesting those services + will result in the return of the same (singleton) instance. + + + events are applied to the of the + instance and are therefore applied once. + events on the other hand get applied to the Expression of the . + Since each AddRegistration gets its own instance producer (that wraps the + Registration instance), this means that the ExpressionBuilt events will be + applied for each registered service type. + + + The most practical example of this is the use of decorators using one of the + RegisterDecorator overloads (decorator registration + use the ExpressionBuilt event under the covers). Take a look at the following example: + + (container); + + container.AddRegistration(typeof(IFoo), registration); + container.AddRegistration(typeof(IBar), registration); + + // Registere a decorator for IBar, but not for IFoo + container.RegisterDecorator(typeof(IBar), typeof(BarDecorator)); + + // Act + var foo = container.GetInstance(); + var decorator = container.GetInstance() as BarDecorator; + var bar = decorator.DecoratedBar; + + // Assert + bool fooAndBareAreTheSameInstance = object.ReferenceEquals(foo, bar); + Assert.IsTrue(fooAndBareAreTheSameInstance); + } + ]]> + The example shows that the decorator gets applied to IBar but not to IFoo, but that + the decorated IBar is still the same instance as the resolved IFoo instance. + + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when is not a reference + type, is open generic, is ambiguous, when it is not assignable from the + 's ImplementationType + or when the supplied is created for a different + instance. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . By default, a new + instance will be returned on each request (according the + Transient lifestyle), independently of the lifestyle of the + wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + + Thrown when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type or + where T is . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see for an example. + + The service type that will be wrapped by the given + . + The decorator type that will be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned, wrapping the + original registered , by injecting that service type into the + constructor of the supplied . Multiple decorators may be applied + to the same . Decorators can be applied to both open, closed, and + non-generic service types. By default, a new instance will be + returned on each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, an decorated + instance will not injected into the , but it will inject a + that allows creating instances of the decorated type, according to the + lifestyle of that type. This enables more advanced scenarios, such as executing the decorated + types on a different thread, or executing decorated instance within a certain scope (such as a + lifetime scope). + + + + The following example shows the definition of a generic ICommandHandler<T> interface, + a CustomerMovedCommandHandler implementing that interface, and a + ValidatorCommandHandlerDecorator<T> that acts as a decorator for that interface. + + { + void Handle(TCommand command); + } + + public class CustomerMovedCommand + { + [Required] + public int CustomerId { get; set; } + + [Required] + public Address Address { get; set; } + } + + public class CustomerMovedCommandHandler + : ICommandHandler + { + public void Handle(CustomerMovedCommand command) + { + // some logic + } + } + + // Decorator that validates commands before they get executed. + public class ValidatorCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly Container container; + + public ValidatorCommandHandlerDecorator( + ICommandHandler decoratedHandler, + Container container) + { + this.decoratedHandler = decoratedHandler; + this.container = container; + } + + public void Handle(TCommand command) + { + this.Validate(command); + + this.decoratedHandler.Handle(command); + } + + private void Validate(TCommand command) + { + var validationContext = + new ValidationContext(command, this.container, null); + + Validator.ValidateObject(command, validationContext); + } + } + + // Decorator that measures the time it takes to execute a command. + public class MonitoringCommandHandlerDecorator + : ICommandHandler + { + private readonly ICommandHandler decoratedHandler; + private readonly ILogger logger; + + public MonitoringCommandHandlerDecorator( + ICommandHandler decoratedHandler, + ILogger logger) + { + this.decoratedHandler = decoratedHandler; + this.logger = logger; + } + + public void Handle(TCommand command) + { + var watch = Stopwatch.StartNew(); + + this.decoratedHandler.Handle(command); + + this.logger.Log(string.Format("{0} executed in {1} ms.", + command.GetType().Name, watch.ElapsedMilliseconds)); + } + } + + [TestMethod] + public static void TestRegisterOpenGenericDecorator() + { + // Arrange + var container = new Container(); + + container.Register(Lifestyle.Singleton); + + // Search the given assembly and register all concrete types that + // implement ICommandHandler. + container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), + typeof(ICommandHandler<>).Assembly); + + // Wrap all ICommandHandler service types with a decorator + // that measures and logs the duration of that handler. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(MonitoringCommandHandlerDecorator<>)); + + // Wrap all ICommandHandler types (in this case it will + // wrap the monitoring decorator), but only if the TCommand contains + // any properties. + container.RegisterDecorator(typeof(ICommandHandler<>), + typeof(ValidatorCommandHandlerDecorator<>), context => + { + var commandType = context.ServiceType.GetGenericArguments()[0]; + bool mustDecorate = commandType.GetProperties().Any(); + return mustDecorate; + }); + + // Act + var handler = + container.GetInstance>(); + + // Assert + Assert.IsInstanceOfType(handler, + typeof(ValidatorCommandHandlerDecorator)); + } + ]]> + + The (possibly open generic) service type that will be wrapped by the + given . + The (possibly the open generic) decorator type that will + be used to wrap the original service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or implement + , when does not + have a single public constructor, or when does not + contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned and cached with + the given , wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get registered. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the supplied decorator is returned when the supplied + returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when is not + an open generic type, when does not inherit from or + implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + + Ensures that the decorator type that is returned from is + supplied when the supplied returns true and cached with the given + , wrapping the original registered , by + injecting that service type into the constructor of the decorator type that is returned by the + supplied . + Multiple decorators may be applied to the same . Decorators can be + applied to both open, closed, and non-generic service types. + + + + The types returned from the may be non-generic, + closed-generic, open-generic and even partially-closed generic. The container will try to fill in + the generic parameters based on the resolved service type. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The type returned from may have a constructor with an + argument of type where T is . In this + case, the library will not inject the decorated itself into the + decorator instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + The following is an example of the registration of a decorator through the factory delegate: + , MoveCustomerCommandHandler>(); + + container.RegisterDecorator( + typeof(ICommandHandler<>), + context => typeof(LoggingCommandHandler<,>).MakeGenericType( + typeof(LoggingCommandHandler<,>).GetGenericArguments().First(), + context.ImplementationType), + Lifestyle.Transient, + context => true); + + var handler = container.GetInstance>(); + + Assert.IsInstanceOfType(handler, + typeof(LoggingCommandHandler)); + + ]]> + The code above allows a generic LoggingCommandHandler<TCommand, TImplementation> to + be applied to command handlers, where the second generic argument will be filled in using the + contextual information. + + The definition of the (possibly open generic) service type that will + be wrapped by the decorator type that is returned from . + A factory that allows building Type objects that define the + decorators to inject, based on the given contextual information. The delegate is allowed to return + (partially) open-generic types. + The lifestyle that specifies how the returned decorator will be cached. + The predicate that determines whether the decorator must be applied to a + service type. + Thrown when one of the arguments is a null reference. + + + + Ensures that the supplied decorator is returned when the supplied + returns true, wrapping the original registered + , by injecting that service type into the constructor of the + supplied . Multiple decorators may be applied to the same + . Decorators can be applied to both open, closed, and non-generic + service types. By default, a new instance will be returned on + each request (according the Transient lifestyle), + independently of the lifestyle of the wrapped service. + + + + This method uses the container's + LifestyleSelectionBehavior to select + the exact lifestyle for the specified type. By default this will be + Transient. + + + The RegisterDecorator method works by hooking onto the container's + ExpressionBuilt event. This event fires after the + ResolveUnregisteredType event, which allows + decoration of types that are resolved using unregistered type resolution. + + + Multiple decorators can be applied to the same service type. The order in which they are registered + is the order they get applied in. This means that the decorator that gets registered first, gets + applied first, which means that the next registered decorator, will wrap the first decorator, which + wraps the original service type. + + + Constructor injection will be used on that type, and although it may have many constructor + arguments, it must have exactly one argument of the type of , or an + argument of type where TResult is . + An exception will be thrown when this is not the case. + + + The registered may have a constructor with an argument of type + where T is . In this case, the + will not inject the decorated itself into the + instance, but it will inject a that allows + creating instances of the decorated type, according to the lifestyle of that type. This enables + more advanced scenarios, such as executing the decorated types on a different thread, or executing + decorated instance within a certain scope (such as a lifetime scope). + + + + Please see the RegisterDecorator method + for more information. + + The definition of the (possibly open generic) service type that will + be wrapped by the given . + The definition of the (possibly open generic) decorator type that will + be used to wrap the original service type. + The predicate that determines whether the + must be applied to a service type. + Thrown when one of the arguments is a null reference. + Thrown when does not inherit + from or implement , when + does not have a single public constructor, or when does + not contain a constructor that has exactly one argument of type + or where T is + . + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + Gets an instance of the given . + Type of object requested. + The requested service instance. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested TService. + Thrown when there are errors resolving the service instance. + + + + Gets all instances of the given currently registered in the container. + + Type of object requested. + A sequence of instances of the requested serviceType. + Thrown when there are errors resolving the service instance. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType. -or- null if there is no service object of type + . + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + An or null (Nothing in VB). + + + + Gets the for the given . When no + registration exists, the container will try creating a new producer. A producer can be created + when the type is a concrete reference type, there is an + event registered that acts on that type, or when the service type is an . + Otherwise null (Nothing in VB) is returned, or an exception is throw when + is set to true. + + + + A call to this method locks the container. New registrations can't be made after a call to this + method. + + + Note: This method is not guaranteed to always return the same + instance for a given . It will however either + always return null or always return a producer that is able to return the expected instance. + + + The that the returned instance producer should produce. + The indication whether the method should return null or throw + an exception when the type is not registered. + An or null (Nothing in VB). + + + + Verifies and diagnoses this Container instance. This method will call all registered + delegates, iterate registered collections and throws an exception if there was an error. + + Thrown when the registration of instances was + invalid. + + + + Verifies the Container. This method will call all registered delegates, + iterate registered collections and throws an exception if there was an error. + + Specifies how the container should verify its configuration. + Thrown when the registration of instances was + invalid. + Thrown in case there are diagnostic errors and + the option is supplied. + Thrown when has an invalid value. + + + + Contains methods for registering and creating collections in the . + + + + + Gets the for this instance. + + The for this instance. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a collection of , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A collection that acts as stream, and calls back into the container to resolve instances + every time the collection is enumerated. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + The collection's instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + A list of assemblies that will be searched. + A new instance. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Creates a new instance defining the creation of a collection of + , whose instances will be resolved lazily + each time the returned collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + types supplied by the given instances. + + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Allows appending new registrations to existing registrations made using one of the + Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new to a collection of registrations for the given + . Calls to Append can both preceed and follow a call to one + of the Container.Collections.Register + overloads. + + The service type of the collection. + The registration to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, is open generic, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic + collection (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + Thrown when the is ambiguous. + + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The concrete type that will be appended as registration to the + collection. + The lifestyle that specifies how the returned instance will be cached. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a new registration of to a collection of + registrations for the given . Calls to Append can both + preceed and follow a call to one of the + Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a new registration of to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The service type of the collection. + The implementation type to append. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends the specified delegate to a collection of + registrations for the given using the supplied + . Calls to Append can both preceed and follow a call to one of + the Container.Collections.Register overloads. + + The element type of the collections to register. + The delegate that allows building or creating new instances. + The lifestyle that specifies how the returned instance will be cached. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when the is not a + reference type, or ambiguous. + Thrown when the container is locked. + Thrown when the method is called for a registration + that is made with one of the Collections.Register overloads that accepts a dynamic collection + (an IEnumerable or IEnumerable<TService>). + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + The element type of the collections to register. + The instance to register. + Thrown when the is ambiguous. + + Thrown when is a null reference. + + + + + Appends a single instance to a collection of registrations for the given + . Calls to AppendInstance can both preceed and follow a + call to one of the + Container.Collections.Register overloads. + This must be thread-safe when working in a multi-threaded environment. + NOTE: Do note that instances supplied by this method NEVER get disposed by the + container; the instance is assumed to outlive this container instance. If disposing is + required, use + RegisterSingleton<TService>(Func<TService>). + + TThe element type of the collections to register. + The instance to register. + Thrown when the is ambiguous, or + does not implement . + + Thrown when either or + are null references. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The interface or base type that can be used to retrieve instances. + The container-uncontrolled collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + + + + Registers a collection of singleton elements of type . + + The interface or base type that can be used to retrieve instances. + The collection to register. + + Thrown when this container instance is locked and can not be altered, or when a + for has already been registered. + + Thrown when is a null + reference. + Thrown when one of the elements of + is a null reference. + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element, a generic type definition, or the is + not assignable from one of the given elements. + + + + + Registers a collection of , whose instances will be resolved lazily + each time the resolved collection of is enumerated. + The underlying collection is a stream that will return individual instances based on their + specific registered lifestyle, for each call to . + The order in which the types appear in the collection is the exact same order that the items were + supplied to this method, i.e the resolved collection is deterministic. + + The base type or interface for elements in the collection. This can be + an a non-generic type, closed generic type or generic type definition. + The collection of objects whose instances + will be requested from the container. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + Thrown when contains a null + (Nothing in VB) element or when is not assignable from any of the + service types supplied by the given instances. + + + + + Registers a dynamic (container uncontrolled) collection of elements of type + . A call to will return the + itself, and updates to the collection will be + reflected in the result. If updates are allowed, make sure the collection can be iterated safely + if you're running a multi-threaded application. + + The base type or interface for elements in the collection. + The collection of items to register. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + Thrown when represents an + open generic type. + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Registers all concrete, non-generic types (both public and internal) that are defined in the given + set of and that implement the given + with a default lifestyle and register them as a collection of . + Unless overridden using a custom + LifestyleSelectionBehavior, the + default lifestyle is Transient. + Composites, + decorators and + generic type definitions + will be excluded from registration. + + The element type of the collections to register. This can be either + a non-generic, closed-generic or open-generic type. + A list of assemblies that will be searched. + Thrown when one of the supplied arguments contain a null + reference (Nothing in VB). + + + + Provides data for and interaction with the + ContainerLocking event of + the . + + + + + Delegate that allows intercepting calls to and + . + + Contextual information about the to be created object. + A delegate that produces the actual instance according to its + lifestyle settings. + The instance that is returned from or an intercepted instance. + + + Configuration options for the Container. + + The following example shows the typical usage of the ContainerOptions class. + (); + + // Use of ContainerOptions class here. + container.Options.AllowOverridingRegistrations = true; + + // Replaces the previous registration of ITimeProvider + container.Register(); + ]]> + + + + + Occurs just before the container is about to be locked, giving the developer a last change to + interact and change the unlocked container before it is sealed for further modifications. Locking + typically occurs by a call to Container.GetInstance, Container.Verify, or any other + method that causes the construction and resolution of registered instances. + + + + The ContainerLocking event is called exactly once by the container, allowing a developer to + register types, hook unregistered type resolution events that need to be applied last, or see + who is responsible for locking the container. + + + A registered event handler delegate is allowed to make a call that locks the container, e.g. + calling Container.GetInstance; this will not cause any new ContainerLocking event to + be raised. Doing so, however, is not advised, as that might cause any following executed handlers + to break, in case they require an unlocked container. + + + + + + Gets the container to which this ContainerOptions instance belongs to. + + The current Container. + + + + Gets or sets a value indicating whether the container allows overriding registrations. The default + is false. + + The value indicating whether the container allows overriding registrations. + + + + Gets or sets a value indicating whether the container should suppress checking for lifestyle + mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default + is false. This setting will have no effect when is true. + + The value indicating whether the container should suppress checking for lifestyle + mismatches. + + + + + Gets or sets a value indicating whether the container should use a loosened (i.e. less strict) + behavior for detecting lifestyle mismatches (see: https://simpleinjector.org/dialm). In short, + when is set to true + dependencies are allowed to be injected into + components. When disabled, a warning would be given in that case. + + + Simple Injector allows custom lifestyles to be created and this loosened behavior works on custom + lifestyles as well. The loosened behavior will ignore any lifestyle mismatch checks on any + component with a lifestyle that has a that is equal or shorter than + the length of . + + + + + + Gets or sets a value indicating whether the container should automatically trigger verification + and diagnostics of its configuration when the first service is resolved (e.g. the first call to + GetInstance). The behavior is identical to calling Verify() + manually. The default is false. + + The value indicating whether the container should automatically trigger verification. + + + Gets or sets a value indicating whether. + This method is deprecated. Changing its value will have no effect. + The value indicating whether the container will return an empty collection. + + + + Gets or sets a value indicating whether all the containers in the current AppDomain should throw + exceptions that contain fully qualified type name. The default is false which means + the type's namespace is omitted. + + The value indicating whether exception message should emit full type names. + + + + Gets or sets a value indicating whether the container should resolve unregistered concrete types. + The default value is true. Consider changing the value to false to prevent + accidental creation of types you haven't registered explicitly. + + The value indicating whether the container should resolve unregistered concrete types. + + Thrown when this container instance is locked and can not be altered. + + + + + Gets or sets the constructor resolution behavior. By default, the container only supports types + that have a single public constructor. + + The constructor resolution behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + Gets or sets the dependency injection behavior. + The constructor injection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the property selection behavior. The container's default behavior is to do no + property injection. + + The property selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the lifestyle selection behavior. The container's default behavior is to make + registrations using the lifestyle. + The lifestyle selection behavior. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default lifestyle that the container will use when a registration is + made when no lifestyle is supplied. + The default lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets the default scoped lifestyle that the container should use when a registration is + made using Lifestyle.Scoped. + The default scoped lifestyle. + Thrown when the supplied value is a null reference. + + Thrown when the container already contains registrations. + + + + + Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. + By default, this value is true for the first few containers that are created in an AppDomain + and false for all other containers. You can set this value explicitly to false + to prevent the use of dynamic assemblies or you can set this value explicitly to true to + force more container instances to use dynamic assemblies. Note that creating an infinite number + of Container instances (for instance one per web request) + with this property set to true will result in a memory leak; dynamic assemblies take up + memory and will only be unloaded when the AppDomain is unloaded. + + A boolean indicating whether the container should use a dynamic assembly for compilation. + + + + + Registers an delegate that allows intercepting calls to + GetInstance and + . + + + If multiple registered instances must be applied, they will be + applied/wrapped in the order of registration, i.e. the first registered interceptor will call the + original instance producer delegate, the second interceptor will call the first interceptor, etc. + The last registered interceptor will become the outermost method in the chain and will be called + first. + + The delegate to register. + The predicate that will be used to check whether the given delegate must + be applied to a registration or not. The given predicate will be called once for each registration + in the container. + + Thrown when either the or are + null references. + + + Thrown when this container instance is locked and can not be altered. + + + The following example shows the usage of the method: + + { + object instance = producer.Invoke(); + Console.WriteLine(instance.GetType().Name + " resolved for " + context.Producer.ServiceType.Name); + return instance; + }, + context => context.Producer.ServiceType.Name.EndsWith("Controller")); + + container.Register(); + container.Register(); + + // This line will write "HomeViewModel resolved for IHomeViewModel" to the console. + container.GetInstance(); + ]]> + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The scope that manages the lifetime of singletons and other container-controlled instances. + + + + + Allows registering an delegate that will be called when the container + gets disposed, but before the container disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to + Dispose, the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Adds the to the list of items that will get disposed when the + container gets disposed. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the container has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. Instead, + provides an atomic operation for getting and setting an item. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Adds an item by the given in the container by using the specified function, + if the key does not already exist. This operation is atomic. + + The Type of the item to create. + The key of the item to insert or override. + The function used to generate a value for the given key. The supplied + value of will be supplied to the function when called. + The stored item or the item from the . + Thrown when either of the arguments is a null reference (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances + are returned in order of creation/registration. When + Container.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be + disposed in opposite order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + + An instance of this type can be injected into constructors of decorator classes that are registered + using RegisterDecorator. This type contains + contextual information about the applied decoration and it allows users to examine the given instance + to make runtime decisions. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterDecorator + overload that takes this delegate. This type contains information about the decoration that is about + to be applied and it allows users to examine the given instance to see whether the decorator should + be applied or not. + + + Please see the + RegisterDecorator + method for more information. + + + + + Gets the closed generic service type for which the decorator is about to be applied. The original + service type will be returned, even if other decorators have already been applied to this type. + + The closed generic service type. + + + + Gets the type of the implementation that is created by the container and for which the decorator + is about to be applied. The original implementation type will be returned, even if other decorators + have already been applied to this type. Please not that the implementation type can not always be + determined. In that case the closed generic service type will be returned. + + The implementation type. + + + + Gets the list of the types of decorators that have already been applied to this instance. + + The applied decorators. + + + + Gets the current object that describes the intention to create a new + instance with its currently applied decorators. + + The current expression that is about to be decorated. + + + + Hooks into the building process and adds a decorator if needed. + + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diaal. + + + + Gets the lifestyles that causes the registrations to be conflicting. + instances. + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the registration that caused this warning. + An . + + + + Gets the list of registrations that are in conflict with the . + + A list of instances. + + + + Entry point for doing diagnostic analysis on instances. + + + The following example shows the usage of the Analyzer class: + + + + + + Analyzes the supplied instance. + + The container instance to analyze. + A collection of sub types that describe the diagnostic + warnings and messages. + + + + Diagnostic result for a warning about a concrete type that was not registered explicitly and was not + resolved using unregistered type resolution, but was created by the container using the transient + lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + Gets a collection of instances that describe all + container-registered dependencies for the given component. + List of objects. + + + + A hierarchical group of . + + + + + Gets the base that describes the service types of its + . The value often be either (in case this is a + root group) or a partial generic type to allow hierarchical grouping of a large number of related + generic types. + + The . + + + Gets the friendly name of the group. + The name. + + + Gets the description of the group. + The description. + + + Gets the diagnostic type of all grouped instances. + The . + + + Gets the parent or null (Nothing in VB) when this is the + root group. + The . + + + Gets the collection of child s. + A collection of elements. + + + Gets the collection of instances. + /// A collection of elements. + + + + Base class for types that hold information about a single diagnostic message or warning for a + particular type or part of the configuration. + + + + Gets the severity of this result. + The . + + + Gets the diagnostic type of this result. + The . + + + Gets the service type to which this warning is related. + A . + + + Gets the description of the diagnostic result. + A with the description. + + + Gets the documentation URL of the diagnostic result. + A with the URL. + + + Gets the hierarchical group to which this diagnostic result belongs. + The . + + + + Specifies the list of severity levels that diagnostic results can have. + + + + Information messages and tips about the configuration. + + + Warning messages that are likely to cause problems in your application. + + + + Specifies the list of diagnostic types that are currently supported by the diagnostic + . Note that new diagnostic types might be added in future versions. + For more information, please read the + Diagnosing your configuration using the Diagnostic + Services wiki documentation. + + + + + Diagnostic type that warns about + a concrete type that was not registered explicitly and was not resolved using unregistered type + resolution, but was created by the container using the transient lifestyle. + For more information, see: https://simpleinjector.org/diaut. + + + + + Diagnostic type that warns when a + component depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + + Diagnostic type that warns when a + component depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + + Diagnostic type that warns when a component depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + + Diagnostic type that warns when multiple registrations map to the same component and + lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + + Diagnostic type that warns when a component is registered as transient, while implementing + . + For more information, see: https://simpleinjector.org/diadt. + + + + + Diagnostic type that warns when multiple registrations exist that map to the same component but + with different lifestyles, which will cause the component to be cached in different -possibly + incompatible- ways. + For more information, see: https://simpleinjector.org/diaal. + + + + + Diagnostic result for a warning about a component that is registered as transient, but implements + . + For more information, see: https://simpleinjector.org/diadt. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result for a warning about a + component that depends on a service with a lifestyle that is shorter than that of the component. + For more information, see: https://simpleinjector.org/dialm. + + + + Gets the object that describes the relationship between the component and its dependency. + A instance. + + + + Diagnostic result that warns about a + component that depends on an unregistered concrete type and this concrete type has a lifestyle that is + different than the lifestyle of an explicitly registered type that uses this concrete type as its + implementation. + For more information, see: https://simpleinjector.org/diasc. + + + + Gets the instance that describes the current relationship between the checked component + and the short-circuited dependency. + The . + + + + Gets the collection of registrations that have the component's current dependency as + implementation type, but have a lifestyle that is different than the current dependency. + + A collection of instances. + + + + Diagnostic result that warns about a component that depends on (too) many services. + For more information, see: https://simpleinjector.org/diasr. + + + + Gets the created type. + A . + + + Gets the list of registrations that are dependencies of the . + A collection of instances. + + + + Diagnostic result that warns about when a multiple registrations map to the same implementation type + and lifestyle, which might cause multiple instances to be created during the lifespan of that lifestyle. + For more information, see: https://simpleinjector.org/diatl. + + + + Gets the lifestyle on which instances are torn. + A . + + + Gets the implementation type that the affected registrations map to. + A . + + + Gets the list of registrations that are affected by this warning. + A list of instances. + + + + Thrown by the container in case of a diagnostic error. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error + message. + + The message that describes the error. + + + + Initializes a new instance of the class with a specified error + message. + + The list of errors. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception, or a null reference (Nothing in Visual + Basic) if no inner exception is specified. + + + + Gets the list of instances. + A list of instances. + + + + Provides data for and interaction with the + ExpressionBuilding event of + the . An observer can change the + property to change the component that is + currently being built. + + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + + Gets the type that is known to be returned by the + Expression (most often the implementation + type used in the Register call). This type will be a derivative of + RegisteredServiceType (or + or RegisteredServiceType itself). If the Expression is changed, the new expression + must also return an instance of type KnownImplementationType or a sub type. + This information must be described in the new Expression. + + A . + + + Gets the lifestyle for the component that is currently being built. + The . + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Provides data for and interaction with the + ExpressionBuilt event of + the . An observer can change the + property to change the component that is currently + being built. + + + + Initializes a new instance of the class. + Type of the registered service. + The registered expression. + + + Gets the registered service type that is currently requested. + The registered service type that is currently requested. + + + Gets or sets the currently registered + Expression. + The current registration. + Thrown when the supplied value is a null reference. + + + Gets or sets the current lifestyle of the registration. + The original lifestyle of the registration. + + + + Gets the collection of currently known relationships. This information is used by the Diagnostics + Debug View. Change the contents of this collection to represent the changes made to the + Expression property (if any). This allows + the Diagnostics Debug View to analyze those new relationships as well. + + The collection of instances. + + + + Helper methods for the container. + + + + + Contains contextual information about the direct consumer for which the given dependency is injected + into. + + + + Initializes a new instance of the class. + The constructor parameter for the created component. + + + Initializes a new instance of the class. + The implementation type of the consumer of the component that should be created. + The property for the created component. + + + Gets the service type of the consumer of the component that should be created. + The closed generic service type. + + + Gets the implementation type of the consumer of the component that should be created. + The implementation type. + + + + Gets the information about the consumer's target in which the dependency is injected. The target + can be either a property or a constructor parameter. + + The for this context. + + + + + + + + + + + + + + + + Discovers the attributes of the code element (a property or parameter) where a dependency will be + injected into, and provides access to its meta data. + + + + + Gets the constructor argument of the consumer of the component where the dependency will be + injected into. The property can return null. + + The or null when the dependency is injected into a property. + + + + + Gets the property of the consumer of the component where the dependency will be injected into. + The property can return null. + + The or null when the dependency is injected into a constructor + argument instead. + + + Gets the name of the target. + A string containing the name of the target. + + + Gets the type of the target. + A containing the type of the target. + + + Gets the member of the target. This is either the constructor of the parameter, or in + case the target is a property, the property itself will be returned. + A containing the type of the target. + + + + Returns an array of all of the custom attributes defined on either the or + the , excluding named attributes, or an empty array if there are no custom + attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + There is more than one attribute of type attributeType + defined on this member. + + + + Returns an array of custom attributes defined on either the or + the , identified by type, or an empty array if there are no custom + attributes of that type. + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + An array of Objects representing custom attributes, or an empty array. + The custom attribute type cannot be loaded. + Thrown when attributeType is null. + + + + Indicates whether one or more instance of attributeType is defined on this either the + or the . + + The type of the custom attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + true if the attributeType is defined on this member; false otherwise. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The parameter to inspect. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The parameter to inspect.The parameter to inspect. + True to inspect the ancestors of element; otherwise, false. + A custom attribute that matches T, or null if no such attribute is found. + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter. + + The type of attribute to search for. + A custom attribute that matches attributeType, or null if no such attribute is found. + + + + + Retrieves a custom attribute of a specified type that is applied to a specified parameter, and + optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A custom attribute matching attributeType, or null if no such attribute is found. + + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter. + + The type of attribute to search for. + A collection of the custom attributes that are applied to element and that match T, or + an empty collection if no such attributes exist. + + + + Retrieves a collection of custom attributes of a specified type that are applied to a specified + parameter, and optionally inspects the ancestors of that parameter. + + The type of attribute to search for. + True to inspect the ancestors of element; otherwise, false. + A collection of the custom attributes that are applied to element and that match T, or an + empty collection if no such attributes exist. + + + + + + + + + + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + GetCurrentRegistrations() or + GetRegistration(Type, bool). + + + The Register method overloads create InstanceProducer instances internally, but + InstanceProducers can be created manually to implement special scenarios. An + InstanceProducer wraps instance. The Registration builds an + that describes the intend to create the instance according to a certain + lifestyle. The InstanceProducer on the other hand transforms this Expression to a + delegate and allows the actual instance to be created. A Registration itself can't create any + instance. The InsanceProducer allows intercepting created instances by hooking onto the + Container.ExpressionBuilt event. The + RegisterDecorator methods for + instance work by hooking onto the ExpressionBuilt event and allow wrapping the returned instance + with a decorator. + + + The following example shows the creation of two different InstanceProducer instances that wrap + the same Registration instance. Since the Registration is created using the + Singleton lifestyle, both producers will return + the same instance. The InstanceProducer for the Interface1 however, will wrap that + instance in a (transient) Interface1Decorator. + (container); + + var producer1 = new InstanceProducer(typeof(Interface1), registration); + var producer2 = new InstanceProducer(typeof(Interface2), registration); + + container.RegisterDecorator(typeof(Interface1), typeof(Interface1Decorator)); + + var instance1 = (Interface1)producer1.GetInstance(); + var instance2 = (Interface2)producer2.GetInstance(); + + Assert.IsInstanceOfType(instance1, typeof(Interface1Decorator)); + Assert.IsInstanceOfType(instance2, typeof(ServiceImpl)); + + Assert.AreSame(((Interface1Decorator)instance1).DecoratedInstance, instance2); + ]]> + + + + Initializes a new instance of the class. + The service type for which this instance is created. + The . + + + + Gets the for this registration. The returned lifestyle can differ from the + lifestyle that is used during the registration. This can happen for instance when the registration + is changed by an ExpressionBuilt + registration or gets decorated. + + The for this registration. + + + Gets the service type for which this producer produces instances. + A instance. + + + Gets the instance for this instance. + The . + + + + Creates a new based on the given + and where the will be used as-is; + no interception (using ExpressionBuilt) such as + decorators will be applied. + + The service type for which this instance is created. + The expression that describes the instance to be produced. + The instance for this registration. + A new that describes the expression. + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + + Builds an expression that expresses the intent to get an instance by the current producer. A call + to this method locks the container. New registrations can't be made after a call to this method. + + An Expression. + + + + Gets the collection of relationships for this instance that the container knows about. + This includes relationships between the registered type and its dependencies and relationships + between applied decorators and their dependencies. Note that types that are not newed up by the + container and properties that are injected inside a custom delegate that is registered using the + RegisterInitializer + method are unknown to the container and are not returned from this method. + Also note that this method will return an empty collection when called before the + registered type is requested from the container (or before + Verify is called). + + An array of instances. + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + + + + Builds a string representation of the object graph with the current instance as root of the + graph. + + The various visualization options for building a string representation of + the object graph. + A string representation of the object graph. + Thrown when this method is called before + or have been called. These calls can be + done directly and explicitly by the user on this instance, indirectly by calling + or on an instance that depends on this + instance, or by calling Verify on the container. + + Thrown when options is null. + + + + Produces instances for a given registration. Instances of this type are generally created by the + container when calling one of the Register overloads. Instances can be retrieved by calling + or . + + The service type. + + + Initializes a new instance of the class. + The . + + + Produces an instance. + An instance. Will never return null. + When the instance could not be retrieved or is null. + + + + A map containing a generic argument (such as T) and the concrete type (such as Int32) that it + represents. + + + + Implements equality. Needed for doing LINQ distinct operations. + The other to compare to. + True or false. + + + Overrides the default hash code. Needed for doing LINQ distinct operations. + An 32 bit integer. + + + + Container controlled collections can be supplied with both Type objects or direct Registration + instances. + + + + + Gets a message that describes the current exception. + + T + he error message that explains the reason for the exception, or an empty string(""). + + + + + Allows verifying whether a given type has a direct or indirect dependency on itself. Verifying is done + by preventing recursive calls to an InstanceProducer. A CyclicDependencyValidator instance checks a + single InstanceProducer and therefore a single service type. + + + + + Allows retrieving the concrete types of the generic type arguments of that must be used to create a + closed generic implementation of a given open generic implementation, based on on the concrete + arguments of the given closed base type. + + + + + Helper class for building closed generic type for a given open generic type and a closed generic base. + + + + Result of the GenericTypeBuilder. + + + + A open generic type with the concrete arguments that can be used to create a closed generic type. + + + + + Allows validating an ArgumentMapping. + + + + + Factory for the creation of a delegate that applies caching to the supplied + . + + A factory for creating new instances. + A factory that returns cached instances. + + + + Instances returned from the container can be cached. The contains several + overloads of the Register method that take a Lifestyle instance as argument to define + how returned instances should be cached. The core library contains two lifestyles out of the box. By + supplying Lifestyle.Transient, the registered instance is not + cached; a new instance is returned every time it is requested or injected. By supplying + Lifestyle.Singleton instances can be cached indefinitely; only + a single instance of the registered component will be returned by that container instance. Other + lifestyles are defined in integration and extension packages. The + CreateCustom method allows defining a custom lifestyle and + the CreateHybrid method + allows creating a lifestyle that mixes multiple other lifestyles. + + + This type is abstract and can be overridden to implement a custom lifestyle. + + + + + The lifestyle instance that doesn't cache instances. A new instance of the specified + component is created every time the registered service is requested or injected. + + + The following example registers the SomeServiceImpl implementation for the + ISomeService service type using the Transient lifestyle: + (Lifestyle.Transient); + ]]> + Note that Transient is the default lifestyle, the previous registration can be reduced to + the following: + (); + ]]> + + + + + + The lifestyle that caches components according to the lifetime of the container's configured + scoped lifestyle. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the active scope gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Scoped lifestyle: + (Lifestyle.Scoped); + ]]> + + + + + + The lifestyle that caches components during the lifetime of the instance + and guarantees that only a single instance of that component is created for that instance. Since + general use is to create a single Container instance for the lifetime of the application / + AppDomain, this would mean that only a single instance of that component would exist during the + lifetime of the application. In a multi-threaded applications, implementations registered using + this lifestyle must be thread-safe. + + + In case the type of a cached instance implements , the container will + ensure its disposal when the container gets disposed. + + + + The following example registers the RealTimeProvider implementation for the + ITimeProvider service type using the Singleton lifestyle: + (Lifestyle.Singleton); + ]]> + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the user friendly name of this lifestyle. + The user friendly name of this lifestyle. + + + + Gets the length of the lifestyle. Implementers must implement this property. The diagnostic + services use this value to compare lifestyles with each other to determine lifestyle + misconfigurations. + + The representing the length of this lifestyle. + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. The hybrid will use + the in case its + GetCurrentScope method returns a + scope; otherwise the is used. The hybrid lifestyle will + redirect the creation of the instance to the selected lifestyle. By nesting hybrid lifestyles, + any number of lifestyles can be mixed. + + The lifestyle to use when its + GetCurrentScope method returns a + scope.. + The lifestyle to use when the + GetCurrentScope method of the + argument returns null. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + ThreadScopedLifestyle and Transient: + + (hybridLifestyle); + container.Register(hybridLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Thread Scoped and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The lifestyle to use when + returns true. + The lifestyle to use when + returns false. + A new hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + Hybrid lifestyles can be nested: + + lifestyle.GetCurrentScope(container) != null, + lifestyle, + Lifestyle.Transient); + + var mixedScopeLifestyle = Lifestyle.CreateHybrid( + () => HttpContext.Current != null, + new WebRequestLifestyle(), + mixedLifetimeTransientLifestyle); + ]]> + + The mixedScopeLifestyle now mixed three lifestyles: Web Request, Lifetime Scope and + Transient. + + + + + + The hybrid lifestyle allows mixing two lifestyles in a single registration. Based on the supplied + delegate the hybrid lifestyle will redirect the creation of + the instance to the correct lifestyle. The result of the + delegate will not be cached; it is invoked each time an instance is requested or injected. By + nesting hybrid lifestyles, any number of lifestyles can be mixed. + + The delegate that determines which + lifestyle should be used. The will be used if true is + returned; the otherwise. This delegate will be called every + time an instance needs to be resolved or injected. + The scoped lifestyle to use when + returns true. + The scoped lifestyle to use when + returns false. + A new scoped hybrid lifestyle that wraps the supplied lifestyles. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + The following example shows the creation of a HybridLifestyle that mixes an + WebRequestLifestyle and ThreadScopedLifestyle: + + HttpContext.Current != null, + new WebRequestLifestyle(), + new ThreadScopedLifestyle()); + + // The created lifestyle can be reused for many registrations. + container.Register(mixedScopeLifestyle); + container.Register(mixedScopeLifestyle); + ]]> + + + + + Creates a custom lifestyle using the supplied delegate. + + + The supplied will be called just once per registered + service. The supplied will be called by the framework + when the type is resolved for the first time, and the framework will supply the factory with a + Func<object> for creating new (transient) instances of that type (that might + have been intercepted and + initializers might have been applied). + It is the job of the to return a Func<object> + that applies the proper caching. The Func<object> that is returned by the + will be stored for that registration (every + registration will store its own Func<object> delegate) and this delegate will be + called every time the service is resolved (by calling + container.GetInstance<TService> or when that service is injected into another + type). + + The name of the lifestyle to create. The name is used to display the lifestyle + in the debugger. + A factory delegate that takes a Func<object> delegate + that will produce a transient instance and returns a delegate that returns cached instances. + A new . + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when is an empty string. + + The following example shows the creation of a lifestyle that caches registered instances for 10 + minutes: + + { + TimeSpan timeout = TimeSpan.FromMinutes(10); + var syncRoot = new object(); + var expirationTime = DateTime.MinValue; + object instance = null; + + // If the application has multiple registrations using this lifestyle, each registration + // will get its own Func delegate (created here) and therefore get its own set + // of variables as defined above. + return () => + { + lock (syncRoot) + { + if (expirationTime < DateTime.UtcNow) + { + instance = instanceCreator(); + expirationTime = DateTime.UtcNow.Add(timeout); + } + + return instance; + } + }; + }); + + var container = new Container(); + + // We can reuse the created lifestyle for multiple registrations. + container.Register(customLifestyle); + container.Register(customLifestyle); + ]]> + + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified caching as + specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances instance using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance for the given + that will create new instances of specified with the + caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + + The concrete type that will be registered. + The instance for which a + must be created. + A new or cached instance. + Thrown when is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be created. + The instance for which a + must be created. + A new instance. + Thrown when is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + Thrown when either or + are null references (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle, + or returns an already created instance for this container + lifestyle + + type combination. + This method might fail when run in a partial trust sandbox when + is an internal type. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + This overload has been deprecated. Please call + instead. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + The delegate that will be responsible for creating new instances. + The instance for which a + must be created. + A new instance. + Thrown when on of the supplied arguments is a null + reference (Nothing in VB). + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + When overridden in a derived class, + creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + If you are implementing your own lifestyle, override this method to implement the code necessary + to create and return a new . Note that you should always create + a new instance. They should never be cached. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. An execution context scope flows with the logical execution context. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ExecutionContextScopeLifestyle class: + (Lifestyle.Scoped); + + using (AsyncScopedLifestyle.BeginScope(container)) + { + var instance1 = container.GetInstance(); + // ... + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + This lifestyle can be used to implement ambient context-less scoping in Simple Injector. This lifestyle + can be set as DefaultScopedLifestyle and later used via Lifestyle.Scoped to register scoped instances, + while instances are resolved via Scope.GetInstance. + + + + + Forwards CreateRegistration calls to the lifestyle that is returned from the registered + container.Options.LifestyleSelectionBehavior. + + + + + Defines a lifestyle that caches instances during the lifetime of an explicitly defined scope using the + BeginScope + method. A scope is thread-specific, each thread should define its own scope. Scopes can be nested and + nested scopes will get their own instance. Instances created by this lifestyle can be disposed when + the created scope gets disposed. + + + The following example shows the usage of the ThreadScopedLifestyle class: + (Lifestyle.Scoped); + + using (container.BeginLifetimeScope()) + { + var instance1 = container.GetInstance(); + + // This call will return the same instance. + var instance2 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance1, instance2)); + + // Create a nested scope. + using (container.BeginLifetimeScope()) + { + // A nested scope gets its own instance. + var instance3 = container.GetInstance(); + + Assert.IsFalse(object.ReferenceEquals(instance1, instance3)); + + // This call will return the same instance. + var instance4 = container.GetInstance(); + + Assert.IsTrue(object.ReferenceEquals(instance3, instance4)); + } + } + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the created + instance gets disposed and when the created object implements + . + + + + + Begins a new scope for the given . + Services, registered using the are cached during the + lifetime of that scope. The scope should be disposed explicitly. + + The container. + A new instance. + + Thrown when the is a null reference. + + + + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method never returns null. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + An instance of this type will be supplied to the + delegate that is that is supplied to the + RegisterConditional + overload that takes this delegate. This type contains information about the open generic service that + is about to be created and it allows the user to examine the given instance to decide whether this + implementation should be created or not. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the closed generic implementation type that will be created by the container. + + The implementation type. + + + Gets a value indicating whether a previous Register registration has already + been applied for the given . + The indication whether the event has been handled. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + A Registration implements lifestyle based caching for a single service and allows building an + that describes the creation of the service. + + + implementations create a new Registration instance for each registered + service type. s returned from the + BuildExpression method can be + intercepted by any event registered with , have + initializers + applied, and the caching particular to its lifestyle have been applied. Interception using the + Container.ExpressionBuilt will not + be applied in the Registration, but will be applied in . + + See the documentation for an example. + + + + + Initializes a new instance of the class. + + The this that created this registration. + The instance for this registration. + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Gets the type that this instance will create. + The type that this instance will create. + + + Gets the this that created this registration. + The this that created this registration. + + + Gets the instance for this registration. + The instance for this registration. + + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. The default is false. Having a value of false, does not force an + instance to be disposed of, though; Transient instances, for instance, will never be disposed of. + + + Gets or sets a value indicating whether the disposal of created instances for this registration + should be suppressed or not. + + + + Gets or sets a value indicating whether this registration object contains a user + supplied instanceCreator factory delegate. + + + + Builds a new with the correct caching (according to the specifications of + its ) applied. + + An . + + + + Gets the list of instances. Note that the list is only available + after calling . + + A new array containing the instances. + + + + Initializes an already created instance and applies properties and initializers to that instance. + + + This method is especially useful in integration scenarios where the given platform is in control + of creating certain types. By passing the instance created by the platform to this method, the + container is still able to apply any properties (as defined using a custom + ) and by applying any initializers. + + The instance to initialize. + Thrown when is a null + reference (Nothing in VB). + Thrown when the supplied is not + of type . + + + + Suppressing the supplied for the given registration. + + The . + The justification of why the warning must be suppressed. + Thrown when is a null + reference. + Thrown when either is an + empty string or when is not a valid value of . + + + + + Builds a delegate for the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers + that are applicable to the given (if any). + + The interface or base type that can be used to retrieve instances. + + The delegate supplied by the user that allows building or creating new instances. + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds a delegate for the creation of . + The returned might be intercepted by a + Container.ExpressionBuilding event, + and the creation of the will have been wrapped with a + delegate that executes the registered + initializers + that are applicable to the given (if any). + + A delegate. + Thrown when one of the arguments is a null reference. + + + + Builds an that describes the creation of the + using the supplied . The returned might + be intercepted by a + Container.ExpressionBuilding event, + and the will have been wrapped with a delegate that executes the + registered initializers that are + applicable to the given (if any). + + + The interface or base type that can be used to retrieve instances. + + + The delegate supplied by the user that allows building or creating new instances. + An . + Thrown when one of the arguments is a null reference. + + + + + Builds an that describes the creation of . + The returned might be intercepted + by a Container.ExpressionBuilding + event, and the creation of the will have been wrapped with + a delegate that executes the registered + initializers that are applicable + to the InstanceProducer's ServiceType (if any). + + An . + Thrown when one of the arguments is a null reference. + + + Implements a cache for implementations. + + is thread-safe can be used over multiple threads concurrently, but note that the + cached instances might not be thread-safe. + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The container instance that the scope belongs to. + + + Gets the container instance that this scope belongs to. + The instance. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + Gets an instance of the given for the current scope. + The type of the service to resolve. + An instance of the given service type. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Adds the to the list of items that will get disposed when the + scope ends. + + + Instances that are registered for disposal, will be disposed in opposite order of registration and + they are guaranteed to be disposed when is called (even when + exceptions are thrown). This mimics the behavior of the C# and VB using statements, + where the method is called inside the finally block. + + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Thrown when the scope has been disposed. + + + + Retrieves an item from the scope stored by the given or null when no + item is stored by that key. + + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both GetItem and . + + The key of the item to retrieve. + The stored item or null (Nothing in VB). + Thrown when one of the supplied arguments is a null + reference (Nothing in VB). + + + Stores an item by the given in the scope. + + Thread-safety: Calls to this method are thread-safe, but users should take proper + percussions when they call both and SetItem. + + The key of the item to insert or override. + The actual item. May be null. + Thrown when paramref name="key"/> is a null reference + (Nothing in VB). + + + + Returns the list of instances that will be disposed of when this + instance is being disposed. The list contains scoped instances that are cached in this instance, + and instances explicitly registered for disposal using . The instances are returned + in order of creation/registration. When Scope.Dispose is called, the scope will ensure + is called on each instance in this list. The instance will be disposed in opposite + order as they appear in the list. + + The list of instances that will be disposed of when this + instance is being disposed. + + + Releases all instances that are cached by the object. + + + Gets the service object of the specified type. + An object that specifies the type of service object to get. + A service object of type serviceType -or- null if there is no service object of type + . + + + + Releases all instances that are cached by the object. + + False when only unmanaged resources should be released. + + + + Base class for scoped lifestyles. A scoped lifestyle caches instances for the duration of an implicitly + or explicitly defined scope. Such scope can be an (implicitly defined) web request or an explicitly + defined Lifetime Scope. The lifetime of instances registered with a scoped lifestyle is always equal + or bigger than one-instance-per-object-graph. In other words, a call to GetInstance() will never create + more than one instance of such registered type. + + + + + Gets the scoped lifestyle that allows Scoped registrations to be resolved direclty from the + by calling . This allows multiple + scopes to be active and overlap within the same logical context, such as a single thread, or an + asynchronous context. + + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Thrown when is null (Nothing in VB) + or an empty string. + + + Initializes a new instance of the class. + The user friendly name of this lifestyle. + Signals the lifestyle whether instances should be + disposed or not. + Thrown when is null (Nothing in VB) + or an empty string. + + + Gets the length of the lifestyle. + The representing the length of this lifestyle. + + + + Allows registering an delegate that will be called when the scope ends, + but before the scope disposes any instances. + + + During the call to all registered delegates are + processed in the order of registration. Do note that registered actions are not guaranteed + to run. In case an exception is thrown during the call to , the + will stop running any actions that might not have been invoked at that point. + Instances that are registered for disposal using on the other + hand, are guaranteed to be disposed. Note that registered actions won't be invoked during a call + to . + + The instance. + The delegate to run when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Adds the to the list of items that will get disposed when the + scope ends. + + The instance. + The instance that should be disposed when the scope ends. + Thrown when one of the arguments is a null reference + (Nothing in VB). + Will be thrown when there is currently no active + scope for the supplied . + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + + Creates a delegate that upon invocation return the current for this + lifestyle and the given , or null when the delegate is executed outside + the context of such scope. + + The container for which the delegate gets created. + A delegate. This method should never return null. + + + + Creates a new instance defining the creation of the + specified using the supplied + with the caching as specified by this lifestyle. + + The interface or base type that can be used to retrieve the instances. + A delegate that will create a new instance of + every time it is called. + The instance for which a + must be created. + A new instance. + + + + Creates a new instance defining the creation of the + specified with the caching as specified by this lifestyle. + + The concrete type that will be registered. + The instance for which a + must be created. + A new instance. + + + + Returns the current for this lifestyle and the given + , or null when this method is executed outside the context of a scope. + + + By default, this method calls the method and invokes the + returned delegate. This method can be overridden to provide an optimized way for getting the + current scope. + + The container instance that is related to the scope to return. + A instance or null when there is no scope active in this context. + + + Internal helper for string resources. + + + + Contains contextual information for creating an implementation type. + + + Please see the + Register + method for more information. + + + + Gets the closed generic service type that is to be created. + The closed generic service type. + + + + Gets the contextual information of the consuming component that directly depends on the resolved + service. This property will return null in case the service is resolved directly from the container. + + The or null. + + + + Returns a list of base types and interfaces of implementationType that either + equal to serviceType or are closed or partially closed version of serviceType (in case + serviceType itself is generic). + So: + -in case serviceType is non generic, only serviceType will be returned. + -If implementationType is open generic, serviceType will be returned (or a partially closed + version of serviceType is returned). + -If serviceType is generic and implementationType is not, a closed version of serviceType will + be returned. + -If implementationType implements multiple (partially) closed versions of serviceType, all those + (partially) closed versions will be returned. + + The (open generic) service type to match. + The implementationType to search. + A list of types. + + + Useful extensions on . + + + + Builds an easy to read type name. Namespaces will be omitted, and generic types will be displayed + in a C#-like syntax. Ideal for reporting type names in exception messages. + + The type to convert. + A human-readable string representation of that type. + Thrown when the supplied argument is a null reference. + + + + Returns true is there is a closed version of the supplied + that is assignable from the current . This method returns true when either + itself, one of its base classes or one of its implemented interfaces is a + closed version of ; otherwise false. + + The type to check. + The generic type definition to match. + True when type is assignable; otherwise false. + + + + Gets the single closed version of that the current + is assignable from. In case none or multiple matching closed types are + found, and exception is thrown. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + The matching closed type. + Thrown when one of the arguments is a null reference. + Thrown when is not + a generic type or when none of the base classes or implemented interfaces of + are closed-versions of . + Thrown when multiple matching closed generic types + are found. + + + + Gets the list of closed versions of that the current + is assignable from. Example: When is a type + class X : IX<int>, IFoo<string> and + is type IX<T>: this method will return type IX<int>. + + The type to check. + The generic type definition to match. + A list of matching closed generic types. + + + + Defines options to control the types returned from the + GetTypesToRegister + method. For a type to be returned, it should match all the conditions described by the class's + properties. In other words, in case the searched assembly contains a generic type, that is both a + decorator and a composite, it will only be returned by GetTypesToRegister in case both + , and + are set to true. + + + + Initializes a new instance of the class. + + + + Gets or sets a value indicating whether decorator types should be included in the result. The default + value of this property is false. A type is considered a decorator if the type's constructor + contains a parameter of the type that exactly matches the serviceType argument, + supplied to the + GetTypesToRegister + method, or when there is a argument where T matches the + serviceType argument. + + A boolean. + + + + Gets or sets a value indicating whether generic type definitions (types that have + Type.IsGenericTypeDefinition + set to true) + should be included in the result. The default value for this property is false. + + A boolean. + + + + Gets or sets a value indicating whether composite types should be included in the result. The default + value of this property is true. A type is considered a composite if the type's constructor + contains a parameter of IEnumerable<T>, ICollection<T>, + IList<T>, IReadOnlyCollection<T>, + IReadOnlyList<T> or T[] (array of T), where T + exactly matches the serviceType argument, supplied to the + GetTypesToRegister + method. + + A boolean. + + + + Provides data for and interaction with the + ResolveUnregisteredType event of + the . An observer can check the + to see whether the unregistered type can be handled. The + method can be called to register a delegate + that allows creation of instances of the unregistered for this and future requests. + + + + Gets the unregistered service type that is currently requested. + The unregistered service type that is currently requested. + + + + Gets a value indicating whether the event represented by this instance has been handled. + This property will return true when has been called on + this instance. + + The indication whether the event has been handled. + + + + Registers a delegate that allows creation of instances of the type + expressed by the for this and future requests. The delegate + will be caches and future requests will directly call that delegate. + + The delegate that allows creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers an that describes the creation of instances of the type + expressed by the for this and future requests. The delegate + will be cached and future requests will directly use that expression or the compiled delegate. + + + NOTE: If possible, use the Register(Registration) overload, + since this allows the analysis services to determine any configuration errors on the lifestyle of + the registration. + + The expression that describes the creation of instances of the type + expressed by the . + Thrown when the is a + null reference. + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + Registers a that describes the creation of instances of the type + expressed by the for this and future requests. The + registration will be cached and future requests will directly call unon that registration, the + expression that it generates or the delegate that gets compiled from that expression. + + The registration that describes the creation of instances according to + the registration's lifestyle of the type expressed by the . + Thrown when the is a + null reference. + Thrown when the is a + not exactly of type where T equals the . + + Thrown when multiple observers that have registered to + the ResolveUnregisteredType event + called this method for the same type. + + + + This enumeration defines in which way the container should run the verification process. + + + + + Specifies that the container performs verification only, which means that it will test whether + all registrations can be constructed by iterating the registrations and letting the container + create at least one instance of each registration. An + will be thrown in case the configuration is invalid. + + + + + Specifies that the container will run diagnostic analysis after the verification succeeded. The + container will diagnose the configuration with a subset of the available diagnostic warnings, that + are most likely an indication of a configuration mistake. A complete set of diagnostic warnings + can be retrieved by calling + Analyzer.Analyze or by viewing the + container in the Visual Studio debugger, after the verification has succeeded. + + + + + Visualization options for providing various information about instances. + + + + + Gets or sets a value indicating whether to include lifestyle information in the visualization. + + The value to include life style information. + + + + Gets or sets a value indicating whether to use fully qualified type names in the visualization. + + The value to use fully qualified type names. + + + diff --git a/packages/SimpleInjector.4.9.1/simpleinjector.png b/packages/SimpleInjector.4.9.1/simpleinjector.png new file mode 100644 index 0000000..3d34a7d Binary files /dev/null and b/packages/SimpleInjector.4.9.1/simpleinjector.png differ diff --git a/packages/SimpleInjector.Integration.WebApi.4.9.1/.signature.p7s b/packages/SimpleInjector.Integration.WebApi.4.9.1/.signature.p7s new file mode 100644 index 0000000..711369e Binary files /dev/null and b/packages/SimpleInjector.Integration.WebApi.4.9.1/.signature.p7s differ diff --git a/packages/SimpleInjector.Integration.WebApi.4.9.1/SimpleInjector.Integration.WebApi.4.9.1.nupkg b/packages/SimpleInjector.Integration.WebApi.4.9.1/SimpleInjector.Integration.WebApi.4.9.1.nupkg new file mode 100644 index 0000000..17fe52e Binary files /dev/null and b/packages/SimpleInjector.Integration.WebApi.4.9.1/SimpleInjector.Integration.WebApi.4.9.1.nupkg differ diff --git a/packages/SimpleInjector.Integration.WebApi.4.9.1/lib/net45/SimpleInjector.Integration.WebApi.dll b/packages/SimpleInjector.Integration.WebApi.4.9.1/lib/net45/SimpleInjector.Integration.WebApi.dll new file mode 100644 index 0000000..de962ae Binary files /dev/null and b/packages/SimpleInjector.Integration.WebApi.4.9.1/lib/net45/SimpleInjector.Integration.WebApi.dll differ diff --git a/packages/SimpleInjector.Integration.WebApi.4.9.1/lib/net45/SimpleInjector.Integration.WebApi.xml b/packages/SimpleInjector.Integration.WebApi.4.9.1/lib/net45/SimpleInjector.Integration.WebApi.xml new file mode 100644 index 0000000..eb64279 --- /dev/null +++ b/packages/SimpleInjector.Integration.WebApi.4.9.1/lib/net45/SimpleInjector.Integration.WebApi.xml @@ -0,0 +1,320 @@ + + + + SimpleInjector.Integration.WebApi + + + + + Provides additional options for creating the . + + + + + When is called, an ambient + scope is used, if one already exists. Otherwise, it + creates a new scope before returning. + This is the default value. + + + + + A new scope is always created by + before returning. + + + + Simple Injector implementation. + + The following example shows the usage of the SimpleInjectorWebApiDependencyResolver in an + Web API application: + (); + + container.RegisterWebApiControllers(config); + container.RegisterWebApiFilterProvider(config); + + // Create a new SimpleInjectorDependencyResolver that wraps the, + // container, and register that resolver in MVC. + + container.Verify(); + + config.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container); + + config.Routes.MapHttpRoute( + name: "DefaultApi", + routeTemplate: "api/{controller}/{id}", + defaults: new { id = RouteParameter.Optional } + ); + } + } + ]]> + The previous example show the use of the + RegisterWebApiControllers + extension methods and how the SimpleInjectorWebApiDependencyResolver can be used to set the created + instance as default dependency resolver in Web API. + + + + + Initializes a new instance of the class with + the default scope option (i.e. to use an ambient + scope if one already exists). + + The container. + Thrown when the parameter is + a null reference (Nothing in VB). + + + + Initializes a new instance of the class. + + The container. + The scoping option. + Thrown when the parameter is + a null reference (Nothing in VB). + Thrown when the + contains an invalid value. + + + Starts a resolution scope. + The dependency scope. + + + Retrieves a service from the scope. + The service to be retrieved. + The retrieved service. + + + Retrieves a collection of services from the scope. + The collection of services to be retrieved. + The retrieved collection of services. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged + resources. + + + + + Defines a lifestyle that caches instances during the execution of a single ASP.NET Web API Request. + Unless explicitly stated otherwise, instances created by this lifestyle will be disposed at the end + of the Web API request. Do note that this lifestyle requires the + to be registered in the Web API configuration. + + + The following example shows the usage of the WebApiRequestLifestyle class: + (Lifestyle.Scoped); + ]]> + + + + Initializes a new instance of the class. + The created and cached instance will be disposed when the Web API request ends, and when the + created object implements . + + + + Initializes a new instance of the class. + + Specifies whether the created and cached instance will be disposed when the Web API request ends, + and when the created object implements . + + + + + Extension methods for integrating Simple Injector with ASP.NET Web API applications. + + Deprecated methods.> + + + + Registers the Web API types that available for the application. This + method uses the configured and + to determine which controller types to register. + + The container the controllers should be registered in. + The to use to get the Controller + types to register. + Thrown when one of the arguments is a null + reference (Nothing in VB). + + + + Registers the Web API types that available for the application. This + method uses the configured to determine which controller + types to register. + + The container the controllers should be registered in. + The to use to get the Controller + types to register. + The assemblies to search. + Thrown when one of the arguments is a null + reference (Nothing in VB). + + + + Registers the Web API types that available for the application. This + method uses the configured to determine which controller + types to register. + + The container the controllers should be registered in. + The to use to get the Controller + types to register. + The assemblies to search. + Thrown when one of the arguments is a null + reference (Nothing in VB). + + + + Makes the current resolvable by calling + GetCurrentHttpRequestMessage. + + The container instance for which HttpRequestMessageTracking should be + enabled. + The application's configuration. + Thrown when one of the arguments is a null reference + (Nothing in VB). + + + + Retrieves the instance for the current request. + + The container. + The for the current request. + Thrown when this method is called before + is called. + Thrown when the argument + is a null reference (Nothing in VB). + + + + Registers that a single instance of will be returned within the + Web API request. When the Web API request ends and + implements , the cached instance will be + disposed. + + The concrete type that will be registered. + The container to make the registrations in. + + Thrown when the is a null reference. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a single instance of will be returned will + be returned within the Web API request. When the Web API request ends and + implements , the cached instance + will be disposed. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The container to make the registrations in. + + Thrown when the is a null reference. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning instances of , + and returned instances are cached during the lifetime of a Web API request. When the Web API + request ends, and the cached instance implements , that cached instance + will be disposed. + + The interface or base type that can be used to retrieve instances. + The container to make the registrations in. + The delegate that allows building or creating new instances. + + Thrown when either the , or are + null references. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + + + Registers that a single instance of will be returned for + each Web API request. When the Web API request ends, and + implements , the cached instance will be disposed. + Scopes can be nested, and each scope gets its own instance. + + The concrete type that will be registered. + The container to make the registrations in. + If set to true the cached instance will be + disposed at the end of its lifetime. + + Thrown when the is a null reference. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + + Thrown when the is a type + that can not be created by the container. + + + + Registers that a single instance of will be returned for + the duration of a single Web API request. When the Web API request ends, + is set to true, and the cached instance + implements , that cached instance will be disposed. + + The interface or base type that can be used to retrieve the instances. + The concrete type that will be registered. + The container to make the registrations in. + If set to true the cached instance will be + disposed at the end of its lifetime. + + Thrown when the is a null reference. + + Thrown when this container instance is locked and can not be altered, or when an + the has already been registered. + Thrown when the given + type is not a type that can be created by the container. + + + + + Registers the specified delegate that allows returning instances of , + and returned instances are cached during the lifetime of single Web API request. When the Web API + request ends, is set to true, and the cached + instance implements , that cached instance will be disposed. + + The interface or base type that can be used to retrieve instances. + The container to make the registrations in. + The delegate that allows building or creating new instances. + If set to true the cached instance will be + disposed at the end of its lifetime. + + Thrown when either the , or are + null references. + + Thrown when this container instance is locked and can not be altered, or when the + has already been registered. + + + diff --git a/packages/SimpleInjector.Integration.WebApi.4.9.1/simpleinjector.png b/packages/SimpleInjector.Integration.WebApi.4.9.1/simpleinjector.png new file mode 100644 index 0000000..3d34a7d Binary files /dev/null and b/packages/SimpleInjector.Integration.WebApi.4.9.1/simpleinjector.png differ diff --git a/packages/WebGrease.1.6.0/WebGrease.1.6.0.nupkg b/packages/WebGrease.1.6.0/WebGrease.1.6.0.nupkg new file mode 100644 index 0000000..cb6d8ea Binary files /dev/null and b/packages/WebGrease.1.6.0/WebGrease.1.6.0.nupkg differ diff --git a/packages/WebGrease.1.6.0/lib/WebGrease.dll b/packages/WebGrease.1.6.0/lib/WebGrease.dll new file mode 100644 index 0000000..a6a80d3 Binary files /dev/null and b/packages/WebGrease.1.6.0/lib/WebGrease.dll differ diff --git a/packages/WebGrease.1.6.0/tools/WG.EXE b/packages/WebGrease.1.6.0/tools/WG.EXE new file mode 100644 index 0000000..139c5ec Binary files /dev/null and b/packages/WebGrease.1.6.0/tools/WG.EXE differ diff --git a/packages/bootstrap.3.3.7/bootstrap.3.3.7.nupkg b/packages/bootstrap.3.3.7/bootstrap.3.3.7.nupkg new file mode 100644 index 0000000..051f94e Binary files /dev/null and b/packages/bootstrap.3.3.7/bootstrap.3.3.7.nupkg differ diff --git a/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.css b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.css new file mode 100644 index 0000000..31d8882 --- /dev/null +++ b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.css @@ -0,0 +1,587 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +.btn-default, +.btn-primary, +.btn-success, +.btn-info, +.btn-warning, +.btn-danger { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); +} +.btn-default:active, +.btn-primary:active, +.btn-success:active, +.btn-info:active, +.btn-warning:active, +.btn-danger:active, +.btn-default.active, +.btn-primary.active, +.btn-success.active, +.btn-info.active, +.btn-warning.active, +.btn-danger.active { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-default.disabled, +.btn-primary.disabled, +.btn-success.disabled, +.btn-info.disabled, +.btn-warning.disabled, +.btn-danger.disabled, +.btn-default[disabled], +.btn-primary[disabled], +.btn-success[disabled], +.btn-info[disabled], +.btn-warning[disabled], +.btn-danger[disabled], +fieldset[disabled] .btn-default, +fieldset[disabled] .btn-primary, +fieldset[disabled] .btn-success, +fieldset[disabled] .btn-info, +fieldset[disabled] .btn-warning, +fieldset[disabled] .btn-danger { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-default .badge, +.btn-primary .badge, +.btn-success .badge, +.btn-info .badge, +.btn-warning .badge, +.btn-danger .badge { + text-shadow: none; +} +.btn:active, +.btn.active { + background-image: none; +} +.btn-default { + text-shadow: 0 1px 0 #fff; + background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); + background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #dbdbdb; + border-color: #ccc; +} +.btn-default:hover, +.btn-default:focus { + background-color: #e0e0e0; + background-position: 0 -15px; +} +.btn-default:active, +.btn-default.active { + background-color: #e0e0e0; + border-color: #dbdbdb; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #e0e0e0; + background-image: none; +} +.btn-primary { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); + background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #245580; +} +.btn-primary:hover, +.btn-primary:focus { + background-color: #265a88; + background-position: 0 -15px; +} +.btn-primary:active, +.btn-primary.active { + background-color: #265a88; + border-color: #245580; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #265a88; + background-image: none; +} +.btn-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #3e8f3e; +} +.btn-success:hover, +.btn-success:focus { + background-color: #419641; + background-position: 0 -15px; +} +.btn-success:active, +.btn-success.active { + background-color: #419641; + border-color: #3e8f3e; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #419641; + background-image: none; +} +.btn-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #28a4c9; +} +.btn-info:hover, +.btn-info:focus { + background-color: #2aabd2; + background-position: 0 -15px; +} +.btn-info:active, +.btn-info.active { + background-color: #2aabd2; + border-color: #28a4c9; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #2aabd2; + background-image: none; +} +.btn-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #e38d13; +} +.btn-warning:hover, +.btn-warning:focus { + background-color: #eb9316; + background-position: 0 -15px; +} +.btn-warning:active, +.btn-warning.active { + background-color: #eb9316; + border-color: #e38d13; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #eb9316; + background-image: none; +} +.btn-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #b92c28; +} +.btn-danger:hover, +.btn-danger:focus { + background-color: #c12e2a; + background-position: 0 -15px; +} +.btn-danger:active, +.btn-danger.active { + background-color: #c12e2a; + border-color: #b92c28; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #c12e2a; + background-image: none; +} +.thumbnail, +.img-thumbnail { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + background-color: #e8e8e8; + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + background-color: #2e6da4; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.navbar-default { + background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); + background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); +} +.navbar-brand, +.navbar-nav > li > a { + text-shadow: 0 1px 0 rgba(255, 255, 255, .25); +} +.navbar-inverse { + background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); + background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); + background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); +} +.navbar-inverse .navbar-brand, +.navbar-inverse .navbar-nav > li > a { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); +} +.navbar-static-top, +.navbar-fixed-top, +.navbar-fixed-bottom { + border-radius: 0; +} +@media (max-width: 767px) { + .navbar .navbar-nav .open .dropdown-menu > .active > a, + .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; + } +} +.alert { + text-shadow: 0 1px 0 rgba(255, 255, 255, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); +} +.alert-success { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); + background-repeat: repeat-x; + border-color: #b2dba1; +} +.alert-info { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); + background-repeat: repeat-x; + border-color: #9acfea; +} +.alert-warning { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); + background-repeat: repeat-x; + border-color: #f5e79e; +} +.alert-danger { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); + background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); + background-repeat: repeat-x; + border-color: #dca7a7; +} +.progress { + background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); + background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.list-group { + border-radius: 4px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + text-shadow: 0 -1px 0 #286090; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); + background-repeat: repeat-x; + border-color: #2b669a; +} +.list-group-item.active .badge, +.list-group-item.active:hover .badge, +.list-group-item.active:focus .badge { + text-shadow: none; +} +.panel { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: 0 1px 2px rgba(0, 0, 0, .05); +} +.panel-default > .panel-heading { + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.panel-primary > .panel-heading { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.panel-success > .panel-heading { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); + background-repeat: repeat-x; +} +.panel-info > .panel-heading { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); + background-repeat: repeat-x; +} +.panel-warning > .panel-heading { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); + background-repeat: repeat-x; +} +.panel-danger > .panel-heading { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); + background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); + background-repeat: repeat-x; +} +.well { + background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; + border-color: #dcdcdc; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); +} +/*# sourceMappingURL=bootstrap-theme.css.map */ diff --git a/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.css.map b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.css.map new file mode 100644 index 0000000..d876f60 --- /dev/null +++ b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"AAAA;;;;GAIG;ACeH;;;;;;EAME,yCAAA;EC2CA,4FAAA;EACQ,oFAAA;CFvDT;ACgBC;;;;;;;;;;;;ECsCA,yDAAA;EACQ,iDAAA;CFxCT;ACMC;;;;;;;;;;;;;;;;;;ECiCA,yBAAA;EACQ,iBAAA;CFnBT;AC/BD;;;;;;EAuBI,kBAAA;CDgBH;ACyBC;;EAEE,uBAAA;CDvBH;AC4BD;EErEI,sEAAA;EACA,iEAAA;EACA,2FAAA;EAAA,oEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;EAuC2C,0BAAA;EAA2B,mBAAA;CDjBvE;ACpBC;;EAEE,0BAAA;EACA,6BAAA;CDsBH;ACnBC;;EAEE,0BAAA;EACA,sBAAA;CDqBH;ACfG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6BL;ACbD;EEtEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8DD;AC5DC;;EAEE,0BAAA;EACA,6BAAA;CD8DH;AC3DC;;EAEE,0BAAA;EACA,sBAAA;CD6DH;ACvDG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqEL;ACpDD;EEvEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CDsGD;ACpGC;;EAEE,0BAAA;EACA,6BAAA;CDsGH;ACnGC;;EAEE,0BAAA;EACA,sBAAA;CDqGH;AC/FG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6GL;AC3FD;EExEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8ID;AC5IC;;EAEE,0BAAA;EACA,6BAAA;CD8IH;AC3IC;;EAEE,0BAAA;EACA,sBAAA;CD6IH;ACvIG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqJL;AClID;EEzEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CDsLD;ACpLC;;EAEE,0BAAA;EACA,6BAAA;CDsLH;ACnLC;;EAEE,0BAAA;EACA,sBAAA;CDqLH;AC/KG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6LL;ACzKD;EE1EI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8ND;AC5NC;;EAEE,0BAAA;EACA,6BAAA;CD8NH;AC3NC;;EAEE,0BAAA;EACA,sBAAA;CD6NH;ACvNG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqOL;AC1MD;;EClCE,mDAAA;EACQ,2CAAA;CFgPT;ACrMD;;EE3FI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF0FF,0BAAA;CD2MD;ACzMD;;;EEhGI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFgGF,0BAAA;CD+MD;ACtMD;EE7GI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ECnBF,oEAAA;EH+HA,mBAAA;ECjEA,4FAAA;EACQ,oFAAA;CF8QT;ACjND;;EE7GI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ED2CF,yDAAA;EACQ,iDAAA;CFwRT;AC9MD;;EAEE,+CAAA;CDgND;AC5MD;EEhII,sEAAA;EACA,iEAAA;EACA,2FAAA;EAAA,oEAAA;EACA,4BAAA;EACA,uHAAA;ECnBF,oEAAA;EHkJA,mBAAA;CDkND;ACrND;;EEhII,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ED2CF,wDAAA;EACQ,gDAAA;CF+ST;AC/ND;;EAYI,0CAAA;CDuNH;AClND;;;EAGE,iBAAA;CDoND;AC/LD;EAfI;;;IAGE,YAAA;IE7JF,yEAAA;IACA,oEAAA;IACA,8FAAA;IAAA,uEAAA;IACA,4BAAA;IACA,uHAAA;GH+WD;CACF;AC3MD;EACE,8CAAA;EC3HA,2FAAA;EACQ,mFAAA;CFyUT;ACnMD;EEtLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CD+MD;AC1MD;EEvLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CDuND;ACjND;EExLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CD+ND;ACxND;EEzLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CDuOD;ACxND;EEjMI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH4ZH;ACrND;EE3MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHmaH;AC3ND;EE5MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH0aH;ACjOD;EE7MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHibH;ACvOD;EE9MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHwbH;AC7OD;EE/MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH+bH;AChPD;EElLI,8MAAA;EACA,yMAAA;EACA,sMAAA;CHqaH;AC5OD;EACE,mBAAA;EC9KA,mDAAA;EACQ,2CAAA;CF6ZT;AC7OD;;;EAGE,8BAAA;EEnOE,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFiOF,sBAAA;CDmPD;ACxPD;;;EAQI,kBAAA;CDqPH;AC3OD;ECnME,kDAAA;EACQ,0CAAA;CFibT;ACrOD;EE5PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHoeH;AC3OD;EE7PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH2eH;ACjPD;EE9PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHkfH;ACvPD;EE/PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHyfH;AC7PD;EEhQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHggBH;ACnQD;EEjQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHugBH;ACnQD;EExQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFsQF,sBAAA;EC3NA,0FAAA;EACQ,kFAAA;CFqeT","file":"bootstrap-theme.css","sourcesContent":["/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} \ No newline at end of file diff --git a/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.min.css b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.min.css new file mode 100644 index 0000000..5e39401 --- /dev/null +++ b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} +/*# sourceMappingURL=bootstrap-theme.min.css.map */ \ No newline at end of file diff --git a/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.min.css.map b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.min.css.map new file mode 100644 index 0000000..94813e9 --- /dev/null +++ b/packages/bootstrap.3.3.7/content/Content/bootstrap-theme.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":";;;;AAmBA,YAAA,aAAA,UAAA,aAAA,aAAA,aAME,YAAA,EAAA,KAAA,EAAA,eC2CA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBDvCR,mBAAA,mBAAA,oBAAA,oBAAA,iBAAA,iBAAA,oBAAA,oBAAA,oBAAA,oBAAA,oBAAA,oBCsCA,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBDlCR,qBAAA,sBAAA,sBAAA,uBAAA,mBAAA,oBAAA,sBAAA,uBAAA,sBAAA,uBAAA,sBAAA,uBAAA,+BAAA,gCAAA,6BAAA,gCAAA,gCAAA,gCCiCA,mBAAA,KACQ,WAAA,KDlDV,mBAAA,oBAAA,iBAAA,oBAAA,oBAAA,oBAuBI,YAAA,KAyCF,YAAA,YAEE,iBAAA,KAKJ,aErEI,YAAA,EAAA,IAAA,EAAA,KACA,iBAAA,iDACA,iBAAA,4CAAA,iBAAA,qEAEA,iBAAA,+CCnBF,OAAA,+GH4CA,OAAA,0DACA,kBAAA,SAuC2C,aAAA,QAA2B,aAAA,KArCtE,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAgBN,aEtEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAiBN,aEvEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAkBN,UExEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,gBAAA,gBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,iBAAA,iBAEE,iBAAA,QACA,aAAA,QAMA,mBAAA,0BAAA,yBAAA,0BAAA,yBAAA,yBAAA,oBAAA,2BAAA,0BAAA,2BAAA,0BAAA,0BAAA,6BAAA,oCAAA,mCAAA,oCAAA,mCAAA,mCAME,iBAAA,QACA,iBAAA,KAmBN,aEzEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAoBN,YE1EI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,kBAAA,kBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,mBAAA,mBAEE,iBAAA,QACA,aAAA,QAMA,qBAAA,4BAAA,2BAAA,4BAAA,2BAAA,2BAAA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,+BAAA,sCAAA,qCAAA,sCAAA,qCAAA,qCAME,iBAAA,QACA,iBAAA,KA2BN,eAAA,WClCE,mBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,EAAA,IAAA,IAAA,iBD2CV,0BAAA,0BE3FI,iBAAA,QACA,iBAAA,oDACA,iBAAA,+CAAA,iBAAA,wEACA,iBAAA,kDACA,OAAA,+GF0FF,kBAAA,SAEF,yBAAA,+BAAA,+BEhGI,iBAAA,QACA,iBAAA,oDACA,iBAAA,+CAAA,iBAAA,wEACA,iBAAA,kDACA,OAAA,+GFgGF,kBAAA,SASF,gBE7GI,iBAAA,iDACA,iBAAA,4CACA,iBAAA,qEAAA,iBAAA,+CACA,OAAA,+GACA,OAAA,0DCnBF,kBAAA,SH+HA,cAAA,ICjEA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBD6DV,sCAAA,oCE7GI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SD2CF,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBD0EV,cAAA,iBAEE,YAAA,EAAA,IAAA,EAAA,sBAIF,gBEhII,iBAAA,iDACA,iBAAA,4CACA,iBAAA,qEAAA,iBAAA,+CACA,OAAA,+GACA,OAAA,0DCnBF,kBAAA,SHkJA,cAAA,IAHF,sCAAA,oCEhII,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SD2CF,mBAAA,MAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBDgFV,8BAAA,iCAYI,YAAA,EAAA,KAAA,EAAA,gBAKJ,qBAAA,kBAAA,mBAGE,cAAA,EAqBF,yBAfI,mDAAA,yDAAA,yDAGE,MAAA,KE7JF,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,UFqKJ,OACE,YAAA,EAAA,IAAA,EAAA,qBC3HA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,gBDsIV,eEtLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAKF,YEvLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAMF,eExLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAOF,cEzLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAeF,UEjMI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFuMJ,cE3MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFwMJ,sBE5MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFyMJ,mBE7MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF0MJ,sBE9MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF2MJ,qBE/MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF+MJ,sBElLI,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKFyLJ,YACE,cAAA,IC9KA,mBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,EAAA,IAAA,IAAA,iBDgLV,wBAAA,8BAAA,8BAGE,YAAA,EAAA,KAAA,EAAA,QEnOE,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFiOF,aAAA,QALF,+BAAA,qCAAA,qCAQI,YAAA,KAUJ,OCnME,mBAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,EAAA,IAAA,IAAA,gBD4MV,8BE5PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFyPJ,8BE7PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF0PJ,8BE9PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF2PJ,2BE/PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF4PJ,8BEhQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF6PJ,6BEjQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFoQJ,MExQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFsQF,aAAA,QC3NA,mBAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,EAAA,IAAA,EAAA,qBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,EAAA,IAAA,EAAA","sourcesContent":["/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} \ No newline at end of file diff --git a/packages/bootstrap.3.3.7/content/Content/bootstrap.css b/packages/bootstrap.3.3.7/content/Content/bootstrap.css new file mode 100644 index 0000000..6167622 --- /dev/null +++ b/packages/bootstrap.3.3.7/content/Content/bootstrap.css @@ -0,0 +1,6757 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + margin: .67em 0; + font-size: 2em; +} +mark { + color: #000; + background: #ff0; +} +small { + font-size: 80%; +} +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +sup { + top: -.5em; +} +sub { + bottom: -.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + height: 0; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + margin: 0; + font: inherit; + color: inherit; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + padding: .35em .625em .75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} +legend { + padding: 0; + border: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-spacing: 0; + border-collapse: collapse; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\002a"; +} +.glyphicon-plus:before { + content: "\002b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + display: inline-block; + max-width: 100%; + height: auto; + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + padding: .2em; + background-color: #fcf8e3; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover, +a.text-primary:focus { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover, +a.text-success:focus { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover, +a.text-info:focus { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover, +a.text-warning:focus { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover, +a.text-danger:focus { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + margin-left: -5px; + list-style: none; +} +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + text-align: right; + border-right: 5px solid #eee; + border-left: 0; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +.row { + margin-right: -15px; + margin-left: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #ddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #ddd; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f9f9f9; +} +.table-hover > tbody > tr:hover { + background-color: #f5f5f5; +} +table col[class*="col-"] { + position: static; + display: table-column; + float: none; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + display: table-cell; + float: none; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + min-height: .01%; + overflow-x: auto; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.42857143; + color: #555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control::-ms-expand { + background-color: transparent; + border: 0; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 34px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-top: 4px \9; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + min-height: 34px; + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-right: 0; + padding-left: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 46px; + line-height: 46px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 11px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + background-color: #dff0d8; + border-color: #3c763d; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #8a6d3b; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + background-color: #f2dede; + border-color: #a94442; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 7px; + margin-bottom: 0; + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 11px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; + opacity: .65; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus { + background-color: #fff; + border-color: #ccc; +} +.btn-default .badge { + color: #fff; + background-color: #333; +} +.btn-primary { + color: #fff; + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:focus, +.btn-primary.focus { + color: #fff; + background-color: #286090; + border-color: #122b40; +} +.btn-primary:hover { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #fff; + background-color: #204d74; + border-color: #122b40; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary .badge { + color: #337ab7; + background-color: #fff; +} +.btn-success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:focus, +.btn-success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus { + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success .badge { + color: #5cb85c; + background-color: #fff; +} +.btn-info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:focus, +.btn-info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus { + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info .badge { + color: #5bc0de; + background-color: #fff; +} +.btn-warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:focus, +.btn-warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus { + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.btn-danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:focus, +.btn-danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + font-weight: normal; + color: #337ab7; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + -o-transition: opacity .15s linear; + transition: opacity .15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); + box-shadow: 0 6px 12px rgba(0, 0, 0, .175); +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + background-color: #337ab7; + outline: 0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + right: 0; + left: auto; +} +.dropdown-menu-left { + right: auto; + left: 0; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + content: ""; + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } + .navbar-right .dropdown-menu-left { + right: auto; + left: 0; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn, +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + display: table-cell; + float: none; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-right: 0; + padding-left: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group .form-control:focus { + z-index: 3; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555; + text-align: center; + background-color: #eee; + border: 1px solid #ccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px; +} +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eee; +} +.nav > li.disabled > a { + color: #777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #ddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eee #eee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555; + cursor: default; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #fff; + background-color: #337ab7; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + -webkit-overflow-scrolling: touch; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-right: 0; + padding-left: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + height: 50px; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-right: 15px; + margin-left: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.navbar-default .navbar-brand { + color: #777; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #777; +} +.navbar-default .navbar-nav > li > a { + color: #777; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #ddd; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #888; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e7e7e7; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555; + background-color: #e7e7e7; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #ccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #777; +} +.navbar-default .navbar-link:hover { + color: #333; +} +.navbar-default .btn-link { + color: #777; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #fff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #fff; + background-color: #080808; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #9d9d9d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #9d9d9d; +} +.navbar-inverse .navbar-link:hover { + color: #fff; +} +.navbar-inverse .btn-link { + color: #9d9d9d; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + padding: 0 5px; + color: #ccc; + content: "/\00a0"; +} +.breadcrumb > .active { + color: #777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #337ab7; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #23527c; + background-color: #eee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 3; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777; + cursor: not-allowed; + background-color: #fff; + border-color: #ddd; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777; + cursor: not-allowed; + background-color: #fff; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: middle; + background-color: #777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #337ab7; + background-color: #fff; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #eee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + padding-right: 15px; + padding-left: 15px; + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-right: auto; + margin-left: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.alert-danger hr { + border-top-color: #e4b9c0; +} +.alert-danger .alert-link { + color: #843534; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); +} +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + -webkit-transition: width .6s ease; + -o-transition: width .6s ease; + transition: width .6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + padding-left: 0; + margin-bottom: 20px; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid #ddd; +} +.list-group-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + color: #555; + text-decoration: none; + background-color: #f5f5f5; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + color: #777; + cursor: not-allowed; + background-color: #eee; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + color: #fff; + background-color: #a94442; + border-color: #a94442; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: 0 1px 1px rgba(0, 0, 0, .05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-right: 15px; + padding-left: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #ddd; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + margin-bottom: 0; + border: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #ddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #ddd; +} +.panel-default { + border-color: #ddd; +} +.panel-default > .panel-heading { + color: #333; + background-color: #f5f5f5; + border-color: #ddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #333; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ddd; +} +.panel-primary { + border-color: #337ab7; +} +.panel-primary > .panel-heading { + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #337ab7; +} +.panel-primary > .panel-heading .badge { + color: #337ab7; + background-color: #fff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #337ab7; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #dff0d8; + background-color: #3c763d; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #d9edf7; + background-color: #31708f; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #fcf8e3; + background-color: #8a6d3b; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #f2dede; + background-color: #a94442; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, .15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + filter: alpha(opacity=20); + opacity: .2; +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + filter: alpha(opacity=50); + opacity: .5; +} +button.close { + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: transparent; + border: 0; +} +.modal-open { + overflow: hidden; +} +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out; + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + outline: 0; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); + box-shadow: 0 3px 9px rgba(0, 0, 0, .5); +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + filter: alpha(opacity=0); + opacity: 0; +} +.modal-backdrop.in { + filter: alpha(opacity=50); + opacity: .5; +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 12px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + filter: alpha(opacity=0); + opacity: 0; + + line-break: auto; +} +.tooltip.in { + filter: alpha(opacity=90); + opacity: .9; +} +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-left .tooltip-arrow { + right: 5px; + bottom: 0; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + + line-break: auto; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + content: ""; + border-width: 10px; +} +.popover.top > .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, .25); + border-bottom-width: 0; +} +.popover.top > .arrow:after { + bottom: 1px; + margin-left: -10px; + content: " "; + border-top-color: #fff; + border-bottom-width: 0; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, .25); + border-left-width: 0; +} +.popover.right > .arrow:after { + bottom: -10px; + left: 1px; + content: " "; + border-right-color: #fff; + border-left-width: 0; +} +.popover.bottom > .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, .25); +} +.popover.bottom > .arrow:after { + top: 1px; + margin-left: -10px; + content: " "; + border-top-width: 0; + border-bottom-color: #fff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, .25); +} +.popover.left > .arrow:after { + right: 1px; + bottom: -10px; + content: " "; + border-right-width: 0; + border-left-color: #fff; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + left: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + left: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + left: 0; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); + background-color: rgba(0, 0, 0, 0); + filter: alpha(opacity=50); + opacity: .5; +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control:hover, +.carousel-control:focus { + color: #fff; + text-decoration: none; + filter: alpha(opacity=90); + outline: 0; + opacity: .9; +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -10px; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + font-family: serif; + line-height: 1; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); + border: 1px solid #fff; + border-radius: 10px; +} +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #fff; +} +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -10px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -10px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-header:before, +.modal-header:after, +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-header:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-right: auto; + margin-left: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +/*# sourceMappingURL=bootstrap.css.map */ diff --git a/packages/bootstrap.3.3.7/content/Content/bootstrap.css.map b/packages/bootstrap.3.3.7/content/Content/bootstrap.css.map new file mode 100644 index 0000000..f010c82 --- /dev/null +++ b/packages/bootstrap.3.3.7/content/Content/bootstrap.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap.css","less/normalize.less","less/print.less","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,4EAA4E;ACG5E;EACE,wBAAA;EACA,2BAAA;EACA,+BAAA;CDDD;ACQD;EACE,UAAA;CDND;ACmBD;;;;;;;;;;;;;EAaE,eAAA;CDjBD;ACyBD;;;;EAIE,sBAAA;EACA,yBAAA;CDvBD;AC+BD;EACE,cAAA;EACA,UAAA;CD7BD;ACqCD;;EAEE,cAAA;CDnCD;AC6CD;EACE,8BAAA;CD3CD;ACmDD;;EAEE,WAAA;CDjDD;AC2DD;EACE,0BAAA;CDzDD;ACgED;;EAEE,kBAAA;CD9DD;ACqED;EACE,mBAAA;CDnED;AC2ED;EACE,eAAA;EACA,iBAAA;CDzED;ACgFD;EACE,iBAAA;EACA,YAAA;CD9ED;ACqFD;EACE,eAAA;CDnFD;AC0FD;;EAEE,eAAA;EACA,eAAA;EACA,mBAAA;EACA,yBAAA;CDxFD;AC2FD;EACE,YAAA;CDzFD;AC4FD;EACE,gBAAA;CD1FD;ACoGD;EACE,UAAA;CDlGD;ACyGD;EACE,iBAAA;CDvGD;ACiHD;EACE,iBAAA;CD/GD;ACsHD;EACE,gCAAA;KAAA,6BAAA;UAAA,wBAAA;EACA,UAAA;CDpHD;AC2HD;EACE,eAAA;CDzHD;ACgID;;;;EAIE,kCAAA;EACA,eAAA;CD9HD;ACgJD;;;;;EAKE,eAAA;EACA,cAAA;EACA,UAAA;CD9ID;ACqJD;EACE,kBAAA;CDnJD;AC6JD;;EAEE,qBAAA;CD3JD;ACsKD;;;;EAIE,2BAAA;EACA,gBAAA;CDpKD;AC2KD;;EAEE,gBAAA;CDzKD;ACgLD;;EAEE,UAAA;EACA,WAAA;CD9KD;ACsLD;EACE,oBAAA;CDpLD;AC+LD;;EAEE,+BAAA;KAAA,4BAAA;UAAA,uBAAA;EACA,WAAA;CD7LD;ACsMD;;EAEE,aAAA;CDpMD;AC4MD;EACE,8BAAA;EACA,gCAAA;KAAA,6BAAA;UAAA,wBAAA;CD1MD;ACmND;;EAEE,yBAAA;CDjND;ACwND;EACE,0BAAA;EACA,cAAA;EACA,+BAAA;CDtND;AC8ND;EACE,UAAA;EACA,WAAA;CD5ND;ACmOD;EACE,eAAA;CDjOD;ACyOD;EACE,kBAAA;CDvOD;ACiPD;EACE,0BAAA;EACA,kBAAA;CD/OD;ACkPD;;EAEE,WAAA;CDhPD;AACD,qFAAqF;AElFrF;EA7FI;;;IAGI,mCAAA;IACA,uBAAA;IACA,oCAAA;YAAA,4BAAA;IACA,6BAAA;GFkLL;EE/KC;;IAEI,2BAAA;GFiLL;EE9KC;IACI,6BAAA;GFgLL;EE7KC;IACI,8BAAA;GF+KL;EE1KC;;IAEI,YAAA;GF4KL;EEzKC;;IAEI,uBAAA;IACA,yBAAA;GF2KL;EExKC;IACI,4BAAA;GF0KL;EEvKC;;IAEI,yBAAA;GFyKL;EEtKC;IACI,2BAAA;GFwKL;EErKC;;;IAGI,WAAA;IACA,UAAA;GFuKL;EEpKC;;IAEI,wBAAA;GFsKL;EEhKC;IACI,cAAA;GFkKL;EEhKC;;IAGQ,kCAAA;GFiKT;EE9JC;IACI,uBAAA;GFgKL;EE7JC;IACI,qCAAA;GF+JL;EEhKC;;IAKQ,kCAAA;GF+JT;EE5JC;;IAGQ,kCAAA;GF6JT;CACF;AGnPD;EACE,oCAAA;EACA,sDAAA;EACA,gYAAA;CHqPD;AG7OD;EACE,mBAAA;EACA,SAAA;EACA,sBAAA;EACA,oCAAA;EACA,mBAAA;EACA,oBAAA;EACA,eAAA;EACA,oCAAA;EACA,mCAAA;CH+OD;AG3OmC;EAAW,iBAAA;CH8O9C;AG7OmC;EAAW,iBAAA;CHgP9C;AG9OmC;;EAAW,iBAAA;CHkP9C;AGjPmC;EAAW,iBAAA;CHoP9C;AGnPmC;EAAW,iBAAA;CHsP9C;AGrPmC;EAAW,iBAAA;CHwP9C;AGvPmC;EAAW,iBAAA;CH0P9C;AGzPmC;EAAW,iBAAA;CH4P9C;AG3PmC;EAAW,iBAAA;CH8P9C;AG7PmC;EAAW,iBAAA;CHgQ9C;AG/PmC;EAAW,iBAAA;CHkQ9C;AGjQmC;EAAW,iBAAA;CHoQ9C;AGnQmC;EAAW,iBAAA;CHsQ9C;AGrQmC;EAAW,iBAAA;CHwQ9C;AGvQmC;EAAW,iBAAA;CH0Q9C;AGzQmC;EAAW,iBAAA;CH4Q9C;AG3QmC;EAAW,iBAAA;CH8Q9C;AG7QmC;EAAW,iBAAA;CHgR9C;AG/QmC;EAAW,iBAAA;CHkR9C;AGjRmC;EAAW,iBAAA;CHoR9C;AGnRmC;EAAW,iBAAA;CHsR9C;AGrRmC;EAAW,iBAAA;CHwR9C;AGvRmC;EAAW,iBAAA;CH0R9C;AGzRmC;EAAW,iBAAA;CH4R9C;AG3RmC;EAAW,iBAAA;CH8R9C;AG7RmC;EAAW,iBAAA;CHgS9C;AG/RmC;EAAW,iBAAA;CHkS9C;AGjSmC;EAAW,iBAAA;CHoS9C;AGnSmC;EAAW,iBAAA;CHsS9C;AGrSmC;EAAW,iBAAA;CHwS9C;AGvSmC;EAAW,iBAAA;CH0S9C;AGzSmC;EAAW,iBAAA;CH4S9C;AG3SmC;EAAW,iBAAA;CH8S9C;AG7SmC;EAAW,iBAAA;CHgT9C;AG/SmC;EAAW,iBAAA;CHkT9C;AGjTmC;EAAW,iBAAA;CHoT9C;AGnTmC;EAAW,iBAAA;CHsT9C;AGrTmC;EAAW,iBAAA;CHwT9C;AGvTmC;EAAW,iBAAA;CH0T9C;AGzTmC;EAAW,iBAAA;CH4T9C;AG3TmC;EAAW,iBAAA;CH8T9C;AG7TmC;EAAW,iBAAA;CHgU9C;AG/TmC;EAAW,iBAAA;CHkU9C;AGjUmC;EAAW,iBAAA;CHoU9C;AGnUmC;EAAW,iBAAA;CHsU9C;AGrUmC;EAAW,iBAAA;CHwU9C;AGvUmC;EAAW,iBAAA;CH0U9C;AGzUmC;EAAW,iBAAA;CH4U9C;AG3UmC;EAAW,iBAAA;CH8U9C;AG7UmC;EAAW,iBAAA;CHgV9C;AG/UmC;EAAW,iBAAA;CHkV9C;AGjVmC;EAAW,iBAAA;CHoV9C;AGnVmC;EAAW,iBAAA;CHsV9C;AGrVmC;EAAW,iBAAA;CHwV9C;AGvVmC;EAAW,iBAAA;CH0V9C;AGzVmC;EAAW,iBAAA;CH4V9C;AG3VmC;EAAW,iBAAA;CH8V9C;AG7VmC;EAAW,iBAAA;CHgW9C;AG/VmC;EAAW,iBAAA;CHkW9C;AGjWmC;EAAW,iBAAA;CHoW9C;AGnWmC;EAAW,iBAAA;CHsW9C;AGrWmC;EAAW,iBAAA;CHwW9C;AGvWmC;EAAW,iBAAA;CH0W9C;AGzWmC;EAAW,iBAAA;CH4W9C;AG3WmC;EAAW,iBAAA;CH8W9C;AG7WmC;EAAW,iBAAA;CHgX9C;AG/WmC;EAAW,iBAAA;CHkX9C;AGjXmC;EAAW,iBAAA;CHoX9C;AGnXmC;EAAW,iBAAA;CHsX9C;AGrXmC;EAAW,iBAAA;CHwX9C;AGvXmC;EAAW,iBAAA;CH0X9C;AGzXmC;EAAW,iBAAA;CH4X9C;AG3XmC;EAAW,iBAAA;CH8X9C;AG7XmC;EAAW,iBAAA;CHgY9C;AG/XmC;EAAW,iBAAA;CHkY9C;AGjYmC;EAAW,iBAAA;CHoY9C;AGnYmC;EAAW,iBAAA;CHsY9C;AGrYmC;EAAW,iBAAA;CHwY9C;AGvYmC;EAAW,iBAAA;CH0Y9C;AGzYmC;EAAW,iBAAA;CH4Y9C;AG3YmC;EAAW,iBAAA;CH8Y9C;AG7YmC;EAAW,iBAAA;CHgZ9C;AG/YmC;EAAW,iBAAA;CHkZ9C;AGjZmC;EAAW,iBAAA;CHoZ9C;AGnZmC;EAAW,iBAAA;CHsZ9C;AGrZmC;EAAW,iBAAA;CHwZ9C;AGvZmC;EAAW,iBAAA;CH0Z9C;AGzZmC;EAAW,iBAAA;CH4Z9C;AG3ZmC;EAAW,iBAAA;CH8Z9C;AG7ZmC;EAAW,iBAAA;CHga9C;AG/ZmC;EAAW,iBAAA;CHka9C;AGjamC;EAAW,iBAAA;CHoa9C;AGnamC;EAAW,iBAAA;CHsa9C;AGramC;EAAW,iBAAA;CHwa9C;AGvamC;EAAW,iBAAA;CH0a9C;AGzamC;EAAW,iBAAA;CH4a9C;AG3amC;EAAW,iBAAA;CH8a9C;AG7amC;EAAW,iBAAA;CHgb9C;AG/amC;EAAW,iBAAA;CHkb9C;AGjbmC;EAAW,iBAAA;CHob9C;AGnbmC;EAAW,iBAAA;CHsb9C;AGrbmC;EAAW,iBAAA;CHwb9C;AGvbmC;EAAW,iBAAA;CH0b9C;AGzbmC;EAAW,iBAAA;CH4b9C;AG3bmC;EAAW,iBAAA;CH8b9C;AG7bmC;EAAW,iBAAA;CHgc9C;AG/bmC;EAAW,iBAAA;CHkc9C;AGjcmC;EAAW,iBAAA;CHoc9C;AGncmC;EAAW,iBAAA;CHsc9C;AGrcmC;EAAW,iBAAA;CHwc9C;AGvcmC;EAAW,iBAAA;CH0c9C;AGzcmC;EAAW,iBAAA;CH4c9C;AG3cmC;EAAW,iBAAA;CH8c9C;AG7cmC;EAAW,iBAAA;CHgd9C;AG/cmC;EAAW,iBAAA;CHkd9C;AGjdmC;EAAW,iBAAA;CHod9C;AGndmC;EAAW,iBAAA;CHsd9C;AGrdmC;EAAW,iBAAA;CHwd9C;AGvdmC;EAAW,iBAAA;CH0d9C;AGzdmC;EAAW,iBAAA;CH4d9C;AG3dmC;EAAW,iBAAA;CH8d9C;AG7dmC;EAAW,iBAAA;CHge9C;AG/dmC;EAAW,iBAAA;CHke9C;AGjemC;EAAW,iBAAA;CHoe9C;AGnemC;EAAW,iBAAA;CHse9C;AGremC;EAAW,iBAAA;CHwe9C;AGvemC;EAAW,iBAAA;CH0e9C;AGzemC;EAAW,iBAAA;CH4e9C;AG3emC;EAAW,iBAAA;CH8e9C;AG7emC;EAAW,iBAAA;CHgf9C;AG/emC;EAAW,iBAAA;CHkf9C;AGjfmC;EAAW,iBAAA;CHof9C;AGnfmC;EAAW,iBAAA;CHsf9C;AGrfmC;EAAW,iBAAA;CHwf9C;AGvfmC;EAAW,iBAAA;CH0f9C;AGzfmC;EAAW,iBAAA;CH4f9C;AG3fmC;EAAW,iBAAA;CH8f9C;AG7fmC;EAAW,iBAAA;CHggB9C;AG/fmC;EAAW,iBAAA;CHkgB9C;AGjgBmC;EAAW,iBAAA;CHogB9C;AGngBmC;EAAW,iBAAA;CHsgB9C;AGrgBmC;EAAW,iBAAA;CHwgB9C;AGvgBmC;EAAW,iBAAA;CH0gB9C;AGzgBmC;EAAW,iBAAA;CH4gB9C;AG3gBmC;EAAW,iBAAA;CH8gB9C;AG7gBmC;EAAW,iBAAA;CHghB9C;AG/gBmC;EAAW,iBAAA;CHkhB9C;AGjhBmC;EAAW,iBAAA;CHohB9C;AGnhBmC;EAAW,iBAAA;CHshB9C;AGrhBmC;EAAW,iBAAA;CHwhB9C;AGvhBmC;EAAW,iBAAA;CH0hB9C;AGzhBmC;EAAW,iBAAA;CH4hB9C;AG3hBmC;EAAW,iBAAA;CH8hB9C;AG7hBmC;EAAW,iBAAA;CHgiB9C;AG/hBmC;EAAW,iBAAA;CHkiB9C;AGjiBmC;EAAW,iBAAA;CHoiB9C;AGniBmC;EAAW,iBAAA;CHsiB9C;AGriBmC;EAAW,iBAAA;CHwiB9C;AGviBmC;EAAW,iBAAA;CH0iB9C;AGziBmC;EAAW,iBAAA;CH4iB9C;AG3iBmC;EAAW,iBAAA;CH8iB9C;AG7iBmC;EAAW,iBAAA;CHgjB9C;AG/iBmC;EAAW,iBAAA;CHkjB9C;AGjjBmC;EAAW,iBAAA;CHojB9C;AGnjBmC;EAAW,iBAAA;CHsjB9C;AGrjBmC;EAAW,iBAAA;CHwjB9C;AGvjBmC;EAAW,iBAAA;CH0jB9C;AGzjBmC;EAAW,iBAAA;CH4jB9C;AG3jBmC;EAAW,iBAAA;CH8jB9C;AG7jBmC;EAAW,iBAAA;CHgkB9C;AG/jBmC;EAAW,iBAAA;CHkkB9C;AGjkBmC;EAAW,iBAAA;CHokB9C;AGnkBmC;EAAW,iBAAA;CHskB9C;AGrkBmC;EAAW,iBAAA;CHwkB9C;AGvkBmC;EAAW,iBAAA;CH0kB9C;AGzkBmC;EAAW,iBAAA;CH4kB9C;AG3kBmC;EAAW,iBAAA;CH8kB9C;AG7kBmC;EAAW,iBAAA;CHglB9C;AG/kBmC;EAAW,iBAAA;CHklB9C;AGjlBmC;EAAW,iBAAA;CHolB9C;AGnlBmC;EAAW,iBAAA;CHslB9C;AGrlBmC;EAAW,iBAAA;CHwlB9C;AGvlBmC;EAAW,iBAAA;CH0lB9C;AGzlBmC;EAAW,iBAAA;CH4lB9C;AG3lBmC;EAAW,iBAAA;CH8lB9C;AG7lBmC;EAAW,iBAAA;CHgmB9C;AG/lBmC;EAAW,iBAAA;CHkmB9C;AGjmBmC;EAAW,iBAAA;CHomB9C;AGnmBmC;EAAW,iBAAA;CHsmB9C;AGrmBmC;EAAW,iBAAA;CHwmB9C;AGvmBmC;EAAW,iBAAA;CH0mB9C;AGzmBmC;EAAW,iBAAA;CH4mB9C;AG3mBmC;EAAW,iBAAA;CH8mB9C;AG7mBmC;EAAW,iBAAA;CHgnB9C;AG/mBmC;EAAW,iBAAA;CHknB9C;AGjnBmC;EAAW,iBAAA;CHonB9C;AGnnBmC;EAAW,iBAAA;CHsnB9C;AGrnBmC;EAAW,iBAAA;CHwnB9C;AGvnBmC;EAAW,iBAAA;CH0nB9C;AGznBmC;EAAW,iBAAA;CH4nB9C;AG3nBmC;EAAW,iBAAA;CH8nB9C;AG7nBmC;EAAW,iBAAA;CHgoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AGvoBmC;EAAW,iBAAA;CH0oB9C;AGzoBmC;EAAW,iBAAA;CH4oB9C;AG3oBmC;EAAW,iBAAA;CH8oB9C;AG7oBmC;EAAW,iBAAA;CHgpB9C;AG/oBmC;EAAW,iBAAA;CHkpB9C;AGjpBmC;EAAW,iBAAA;CHopB9C;AGnpBmC;EAAW,iBAAA;CHspB9C;AGrpBmC;EAAW,iBAAA;CHwpB9C;AGvpBmC;EAAW,iBAAA;CH0pB9C;AGzpBmC;EAAW,iBAAA;CH4pB9C;AG3pBmC;EAAW,iBAAA;CH8pB9C;AG7pBmC;EAAW,iBAAA;CHgqB9C;AG/pBmC;EAAW,iBAAA;CHkqB9C;AGjqBmC;EAAW,iBAAA;CHoqB9C;AGnqBmC;EAAW,iBAAA;CHsqB9C;AGrqBmC;EAAW,iBAAA;CHwqB9C;AGvqBmC;EAAW,iBAAA;CH0qB9C;AGzqBmC;EAAW,iBAAA;CH4qB9C;AG3qBmC;EAAW,iBAAA;CH8qB9C;AG7qBmC;EAAW,iBAAA;CHgrB9C;AG/qBmC;EAAW,iBAAA;CHkrB9C;AGjrBmC;EAAW,iBAAA;CHorB9C;AGnrBmC;EAAW,iBAAA;CHsrB9C;AGrrBmC;EAAW,iBAAA;CHwrB9C;AGvrBmC;EAAW,iBAAA;CH0rB9C;AGzrBmC;EAAW,iBAAA;CH4rB9C;AG3rBmC;EAAW,iBAAA;CH8rB9C;AG7rBmC;EAAW,iBAAA;CHgsB9C;AG/rBmC;EAAW,iBAAA;CHksB9C;AGjsBmC;EAAW,iBAAA;CHosB9C;AGnsBmC;EAAW,iBAAA;CHssB9C;AGrsBmC;EAAW,iBAAA;CHwsB9C;AGvsBmC;EAAW,iBAAA;CH0sB9C;AGzsBmC;EAAW,iBAAA;CH4sB9C;AG3sBmC;EAAW,iBAAA;CH8sB9C;AG7sBmC;EAAW,iBAAA;CHgtB9C;AG/sBmC;EAAW,iBAAA;CHktB9C;AGjtBmC;EAAW,iBAAA;CHotB9C;AGntBmC;EAAW,iBAAA;CHstB9C;AGrtBmC;EAAW,iBAAA;CHwtB9C;AGvtBmC;EAAW,iBAAA;CH0tB9C;AGztBmC;EAAW,iBAAA;CH4tB9C;AG3tBmC;EAAW,iBAAA;CH8tB9C;AG7tBmC;EAAW,iBAAA;CHguB9C;AG/tBmC;EAAW,iBAAA;CHkuB9C;AGjuBmC;EAAW,iBAAA;CHouB9C;AGnuBmC;EAAW,iBAAA;CHsuB9C;AGruBmC;EAAW,iBAAA;CHwuB9C;AGvuBmC;EAAW,iBAAA;CH0uB9C;AGzuBmC;EAAW,iBAAA;CH4uB9C;AG3uBmC;EAAW,iBAAA;CH8uB9C;AG7uBmC;EAAW,iBAAA;CHgvB9C;AIthCD;ECgEE,+BAAA;EACG,4BAAA;EACK,uBAAA;CLy9BT;AIxhCD;;EC6DE,+BAAA;EACG,4BAAA;EACK,uBAAA;CL+9BT;AIthCD;EACE,gBAAA;EACA,8CAAA;CJwhCD;AIrhCD;EACE,4DAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,uBAAA;CJuhCD;AInhCD;;;;EAIE,qBAAA;EACA,mBAAA;EACA,qBAAA;CJqhCD;AI/gCD;EACE,eAAA;EACA,sBAAA;CJihCD;AI/gCC;;EAEE,eAAA;EACA,2BAAA;CJihCH;AI9gCC;EEnDA,2CAAA;EACA,qBAAA;CNokCD;AIvgCD;EACE,UAAA;CJygCD;AIngCD;EACE,uBAAA;CJqgCD;AIjgCD;;;;;EGvEE,eAAA;EACA,gBAAA;EACA,aAAA;CP+kCD;AIrgCD;EACE,mBAAA;CJugCD;AIjgCD;EACE,aAAA;EACA,wBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;EC6FA,yCAAA;EACK,oCAAA;EACG,iCAAA;EEvLR,sBAAA;EACA,gBAAA;EACA,aAAA;CP+lCD;AIjgCD;EACE,mBAAA;CJmgCD;AI7/BD;EACE,iBAAA;EACA,oBAAA;EACA,UAAA;EACA,8BAAA;CJ+/BD;AIv/BD;EACE,mBAAA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,WAAA;EACA,iBAAA;EACA,uBAAA;EACA,UAAA;CJy/BD;AIj/BC;;EAEE,iBAAA;EACA,YAAA;EACA,aAAA;EACA,UAAA;EACA,kBAAA;EACA,WAAA;CJm/BH;AIx+BD;EACE,gBAAA;CJ0+BD;AQjoCD;;;;;;;;;;;;EAEE,qBAAA;EACA,iBAAA;EACA,iBAAA;EACA,eAAA;CR6oCD;AQlpCD;;;;;;;;;;;;;;;;;;;;;;;;EASI,oBAAA;EACA,eAAA;EACA,eAAA;CRmqCH;AQ/pCD;;;;;;EAGE,iBAAA;EACA,oBAAA;CRoqCD;AQxqCD;;;;;;;;;;;;EAQI,eAAA;CR8qCH;AQ3qCD;;;;;;EAGE,iBAAA;EACA,oBAAA;CRgrCD;AQprCD;;;;;;;;;;;;EAQI,eAAA;CR0rCH;AQtrCD;;EAAU,gBAAA;CR0rCT;AQzrCD;;EAAU,gBAAA;CR6rCT;AQ5rCD;;EAAU,gBAAA;CRgsCT;AQ/rCD;;EAAU,gBAAA;CRmsCT;AQlsCD;;EAAU,gBAAA;CRssCT;AQrsCD;;EAAU,gBAAA;CRysCT;AQnsCD;EACE,iBAAA;CRqsCD;AQlsCD;EACE,oBAAA;EACA,gBAAA;EACA,iBAAA;EACA,iBAAA;CRosCD;AQ/rCD;EAwOA;IA1OI,gBAAA;GRqsCD;CACF;AQ7rCD;;EAEE,eAAA;CR+rCD;AQ5rCD;;EAEE,0BAAA;EACA,cAAA;CR8rCD;AQ1rCD;EAAuB,iBAAA;CR6rCtB;AQ5rCD;EAAuB,kBAAA;CR+rCtB;AQ9rCD;EAAuB,mBAAA;CRisCtB;AQhsCD;EAAuB,oBAAA;CRmsCtB;AQlsCD;EAAuB,oBAAA;CRqsCtB;AQlsCD;EAAuB,0BAAA;CRqsCtB;AQpsCD;EAAuB,0BAAA;CRusCtB;AQtsCD;EAAuB,2BAAA;CRysCtB;AQtsCD;EACE,eAAA;CRwsCD;AQtsCD;ECrGE,eAAA;CT8yCD;AS7yCC;;EAEE,eAAA;CT+yCH;AQ1sCD;ECxGE,eAAA;CTqzCD;ASpzCC;;EAEE,eAAA;CTszCH;AQ9sCD;EC3GE,eAAA;CT4zCD;AS3zCC;;EAEE,eAAA;CT6zCH;AQltCD;EC9GE,eAAA;CTm0CD;ASl0CC;;EAEE,eAAA;CTo0CH;AQttCD;ECjHE,eAAA;CT00CD;ASz0CC;;EAEE,eAAA;CT20CH;AQttCD;EAGE,YAAA;EE3HA,0BAAA;CVk1CD;AUj1CC;;EAEE,0BAAA;CVm1CH;AQxtCD;EE9HE,0BAAA;CVy1CD;AUx1CC;;EAEE,0BAAA;CV01CH;AQ5tCD;EEjIE,0BAAA;CVg2CD;AU/1CC;;EAEE,0BAAA;CVi2CH;AQhuCD;EEpIE,0BAAA;CVu2CD;AUt2CC;;EAEE,0BAAA;CVw2CH;AQpuCD;EEvIE,0BAAA;CV82CD;AU72CC;;EAEE,0BAAA;CV+2CH;AQnuCD;EACE,oBAAA;EACA,oBAAA;EACA,iCAAA;CRquCD;AQ7tCD;;EAEE,cAAA;EACA,oBAAA;CR+tCD;AQluCD;;;;EAMI,iBAAA;CRkuCH;AQ3tCD;EACE,gBAAA;EACA,iBAAA;CR6tCD;AQztCD;EALE,gBAAA;EACA,iBAAA;EAMA,kBAAA;CR4tCD;AQ9tCD;EAKI,sBAAA;EACA,kBAAA;EACA,mBAAA;CR4tCH;AQvtCD;EACE,cAAA;EACA,oBAAA;CRytCD;AQvtCD;;EAEE,wBAAA;CRytCD;AQvtCD;EACE,kBAAA;CRytCD;AQvtCD;EACE,eAAA;CRytCD;AQhsCD;EA6EA;IAvFM,YAAA;IACA,aAAA;IACA,YAAA;IACA,kBAAA;IGtNJ,iBAAA;IACA,wBAAA;IACA,oBAAA;GXq6CC;EQ7nCH;IAhFM,mBAAA;GRgtCH;CACF;AQvsCD;;EAGE,aAAA;EACA,kCAAA;CRwsCD;AQtsCD;EACE,eAAA;EA9IqB,0BAAA;CRu1CtB;AQpsCD;EACE,mBAAA;EACA,iBAAA;EACA,kBAAA;EACA,+BAAA;CRssCD;AQjsCG;;;EACE,iBAAA;CRqsCL;AQ/sCD;;;EAmBI,eAAA;EACA,eAAA;EACA,wBAAA;EACA,eAAA;CRisCH;AQ/rCG;;;EACE,uBAAA;CRmsCL;AQ3rCD;;EAEE,oBAAA;EACA,gBAAA;EACA,gCAAA;EACA,eAAA;EACA,kBAAA;CR6rCD;AQvrCG;;;;;;EAAW,YAAA;CR+rCd;AQ9rCG;;;;;;EACE,uBAAA;CRqsCL;AQ/rCD;EACE,oBAAA;EACA,mBAAA;EACA,wBAAA;CRisCD;AYv+CD;;;;EAIE,+DAAA;CZy+CD;AYr+CD;EACE,iBAAA;EACA,eAAA;EACA,eAAA;EACA,0BAAA;EACA,mBAAA;CZu+CD;AYn+CD;EACE,iBAAA;EACA,eAAA;EACA,YAAA;EACA,uBAAA;EACA,mBAAA;EACA,uDAAA;UAAA,+CAAA;CZq+CD;AY3+CD;EASI,WAAA;EACA,gBAAA;EACA,kBAAA;EACA,yBAAA;UAAA,iBAAA;CZq+CH;AYh+CD;EACE,eAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,wBAAA;EACA,sBAAA;EACA,sBAAA;EACA,eAAA;EACA,0BAAA;EACA,uBAAA;EACA,mBAAA;CZk+CD;AY7+CD;EAeI,WAAA;EACA,mBAAA;EACA,eAAA;EACA,sBAAA;EACA,8BAAA;EACA,iBAAA;CZi+CH;AY59CD;EACE,kBAAA;EACA,mBAAA;CZ89CD;AaxhDD;ECHE,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,oBAAA;Cd8hDD;AaxhDC;EAqEF;IAvEI,aAAA;Gb8hDD;CACF;Aa1hDC;EAkEF;IApEI,aAAA;GbgiDD;CACF;Aa5hDD;EA+DA;IAjEI,cAAA;GbkiDD;CACF;AazhDD;ECvBE,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,oBAAA;CdmjDD;AathDD;ECvBE,mBAAA;EACA,oBAAA;CdgjDD;AehjDG;EACE,mBAAA;EAEA,gBAAA;EAEA,mBAAA;EACA,oBAAA;CfgjDL;AehiDG;EACE,YAAA;CfkiDL;Ae3hDC;EACE,YAAA;Cf6hDH;Ae9hDC;EACE,oBAAA;CfgiDH;AejiDC;EACE,oBAAA;CfmiDH;AepiDC;EACE,WAAA;CfsiDH;AeviDC;EACE,oBAAA;CfyiDH;Ae1iDC;EACE,oBAAA;Cf4iDH;Ae7iDC;EACE,WAAA;Cf+iDH;AehjDC;EACE,oBAAA;CfkjDH;AenjDC;EACE,oBAAA;CfqjDH;AetjDC;EACE,WAAA;CfwjDH;AezjDC;EACE,oBAAA;Cf2jDH;Ae5jDC;EACE,mBAAA;Cf8jDH;AehjDC;EACE,YAAA;CfkjDH;AenjDC;EACE,oBAAA;CfqjDH;AetjDC;EACE,oBAAA;CfwjDH;AezjDC;EACE,WAAA;Cf2jDH;Ae5jDC;EACE,oBAAA;Cf8jDH;Ae/jDC;EACE,oBAAA;CfikDH;AelkDC;EACE,WAAA;CfokDH;AerkDC;EACE,oBAAA;CfukDH;AexkDC;EACE,oBAAA;Cf0kDH;Ae3kDC;EACE,WAAA;Cf6kDH;Ae9kDC;EACE,oBAAA;CfglDH;AejlDC;EACE,mBAAA;CfmlDH;Ae/kDC;EACE,YAAA;CfilDH;AejmDC;EACE,WAAA;CfmmDH;AepmDC;EACE,mBAAA;CfsmDH;AevmDC;EACE,mBAAA;CfymDH;Ae1mDC;EACE,UAAA;Cf4mDH;Ae7mDC;EACE,mBAAA;Cf+mDH;AehnDC;EACE,mBAAA;CfknDH;AennDC;EACE,UAAA;CfqnDH;AetnDC;EACE,mBAAA;CfwnDH;AeznDC;EACE,mBAAA;Cf2nDH;Ae5nDC;EACE,UAAA;Cf8nDH;Ae/nDC;EACE,mBAAA;CfioDH;AeloDC;EACE,kBAAA;CfooDH;AehoDC;EACE,WAAA;CfkoDH;AepnDC;EACE,kBAAA;CfsnDH;AevnDC;EACE,0BAAA;CfynDH;Ae1nDC;EACE,0BAAA;Cf4nDH;Ae7nDC;EACE,iBAAA;Cf+nDH;AehoDC;EACE,0BAAA;CfkoDH;AenoDC;EACE,0BAAA;CfqoDH;AetoDC;EACE,iBAAA;CfwoDH;AezoDC;EACE,0BAAA;Cf2oDH;Ae5oDC;EACE,0BAAA;Cf8oDH;Ae/oDC;EACE,iBAAA;CfipDH;AelpDC;EACE,0BAAA;CfopDH;AerpDC;EACE,yBAAA;CfupDH;AexpDC;EACE,gBAAA;Cf0pDH;Aa1pDD;EElCI;IACE,YAAA;Gf+rDH;EexrDD;IACE,YAAA;Gf0rDD;Ee3rDD;IACE,oBAAA;Gf6rDD;Ee9rDD;IACE,oBAAA;GfgsDD;EejsDD;IACE,WAAA;GfmsDD;EepsDD;IACE,oBAAA;GfssDD;EevsDD;IACE,oBAAA;GfysDD;Ee1sDD;IACE,WAAA;Gf4sDD;Ee7sDD;IACE,oBAAA;Gf+sDD;EehtDD;IACE,oBAAA;GfktDD;EentDD;IACE,WAAA;GfqtDD;EettDD;IACE,oBAAA;GfwtDD;EeztDD;IACE,mBAAA;Gf2tDD;Ee7sDD;IACE,YAAA;Gf+sDD;EehtDD;IACE,oBAAA;GfktDD;EentDD;IACE,oBAAA;GfqtDD;EettDD;IACE,WAAA;GfwtDD;EeztDD;IACE,oBAAA;Gf2tDD;Ee5tDD;IACE,oBAAA;Gf8tDD;Ee/tDD;IACE,WAAA;GfiuDD;EeluDD;IACE,oBAAA;GfouDD;EeruDD;IACE,oBAAA;GfuuDD;EexuDD;IACE,WAAA;Gf0uDD;Ee3uDD;IACE,oBAAA;Gf6uDD;Ee9uDD;IACE,mBAAA;GfgvDD;Ee5uDD;IACE,YAAA;Gf8uDD;Ee9vDD;IACE,WAAA;GfgwDD;EejwDD;IACE,mBAAA;GfmwDD;EepwDD;IACE,mBAAA;GfswDD;EevwDD;IACE,UAAA;GfywDD;Ee1wDD;IACE,mBAAA;Gf4wDD;Ee7wDD;IACE,mBAAA;Gf+wDD;EehxDD;IACE,UAAA;GfkxDD;EenxDD;IACE,mBAAA;GfqxDD;EetxDD;IACE,mBAAA;GfwxDD;EezxDD;IACE,UAAA;Gf2xDD;Ee5xDD;IACE,mBAAA;Gf8xDD;Ee/xDD;IACE,kBAAA;GfiyDD;Ee7xDD;IACE,WAAA;Gf+xDD;EejxDD;IACE,kBAAA;GfmxDD;EepxDD;IACE,0BAAA;GfsxDD;EevxDD;IACE,0BAAA;GfyxDD;Ee1xDD;IACE,iBAAA;Gf4xDD;Ee7xDD;IACE,0BAAA;Gf+xDD;EehyDD;IACE,0BAAA;GfkyDD;EenyDD;IACE,iBAAA;GfqyDD;EetyDD;IACE,0BAAA;GfwyDD;EezyDD;IACE,0BAAA;Gf2yDD;Ee5yDD;IACE,iBAAA;Gf8yDD;Ee/yDD;IACE,0BAAA;GfizDD;EelzDD;IACE,yBAAA;GfozDD;EerzDD;IACE,gBAAA;GfuzDD;CACF;Aa/yDD;EE3CI;IACE,YAAA;Gf61DH;Eet1DD;IACE,YAAA;Gfw1DD;Eez1DD;IACE,oBAAA;Gf21DD;Ee51DD;IACE,oBAAA;Gf81DD;Ee/1DD;IACE,WAAA;Gfi2DD;Eel2DD;IACE,oBAAA;Gfo2DD;Eer2DD;IACE,oBAAA;Gfu2DD;Eex2DD;IACE,WAAA;Gf02DD;Ee32DD;IACE,oBAAA;Gf62DD;Ee92DD;IACE,oBAAA;Gfg3DD;Eej3DD;IACE,WAAA;Gfm3DD;Eep3DD;IACE,oBAAA;Gfs3DD;Eev3DD;IACE,mBAAA;Gfy3DD;Ee32DD;IACE,YAAA;Gf62DD;Ee92DD;IACE,oBAAA;Gfg3DD;Eej3DD;IACE,oBAAA;Gfm3DD;Eep3DD;IACE,WAAA;Gfs3DD;Eev3DD;IACE,oBAAA;Gfy3DD;Ee13DD;IACE,oBAAA;Gf43DD;Ee73DD;IACE,WAAA;Gf+3DD;Eeh4DD;IACE,oBAAA;Gfk4DD;Een4DD;IACE,oBAAA;Gfq4DD;Eet4DD;IACE,WAAA;Gfw4DD;Eez4DD;IACE,oBAAA;Gf24DD;Ee54DD;IACE,mBAAA;Gf84DD;Ee14DD;IACE,YAAA;Gf44DD;Ee55DD;IACE,WAAA;Gf85DD;Ee/5DD;IACE,mBAAA;Gfi6DD;Eel6DD;IACE,mBAAA;Gfo6DD;Eer6DD;IACE,UAAA;Gfu6DD;Eex6DD;IACE,mBAAA;Gf06DD;Ee36DD;IACE,mBAAA;Gf66DD;Ee96DD;IACE,UAAA;Gfg7DD;Eej7DD;IACE,mBAAA;Gfm7DD;Eep7DD;IACE,mBAAA;Gfs7DD;Eev7DD;IACE,UAAA;Gfy7DD;Ee17DD;IACE,mBAAA;Gf47DD;Ee77DD;IACE,kBAAA;Gf+7DD;Ee37DD;IACE,WAAA;Gf67DD;Ee/6DD;IACE,kBAAA;Gfi7DD;Eel7DD;IACE,0BAAA;Gfo7DD;Eer7DD;IACE,0BAAA;Gfu7DD;Eex7DD;IACE,iBAAA;Gf07DD;Ee37DD;IACE,0BAAA;Gf67DD;Ee97DD;IACE,0BAAA;Gfg8DD;Eej8DD;IACE,iBAAA;Gfm8DD;Eep8DD;IACE,0BAAA;Gfs8DD;Eev8DD;IACE,0BAAA;Gfy8DD;Ee18DD;IACE,iBAAA;Gf48DD;Ee78DD;IACE,0BAAA;Gf+8DD;Eeh9DD;IACE,yBAAA;Gfk9DD;Een9DD;IACE,gBAAA;Gfq9DD;CACF;Aa18DD;EE9CI;IACE,YAAA;Gf2/DH;Eep/DD;IACE,YAAA;Gfs/DD;Eev/DD;IACE,oBAAA;Gfy/DD;Ee1/DD;IACE,oBAAA;Gf4/DD;Ee7/DD;IACE,WAAA;Gf+/DD;EehgED;IACE,oBAAA;GfkgED;EengED;IACE,oBAAA;GfqgED;EetgED;IACE,WAAA;GfwgED;EezgED;IACE,oBAAA;Gf2gED;Ee5gED;IACE,oBAAA;Gf8gED;Ee/gED;IACE,WAAA;GfihED;EelhED;IACE,oBAAA;GfohED;EerhED;IACE,mBAAA;GfuhED;EezgED;IACE,YAAA;Gf2gED;Ee5gED;IACE,oBAAA;Gf8gED;Ee/gED;IACE,oBAAA;GfihED;EelhED;IACE,WAAA;GfohED;EerhED;IACE,oBAAA;GfuhED;EexhED;IACE,oBAAA;Gf0hED;Ee3hED;IACE,WAAA;Gf6hED;Ee9hED;IACE,oBAAA;GfgiED;EejiED;IACE,oBAAA;GfmiED;EepiED;IACE,WAAA;GfsiED;EeviED;IACE,oBAAA;GfyiED;Ee1iED;IACE,mBAAA;Gf4iED;EexiED;IACE,YAAA;Gf0iED;Ee1jED;IACE,WAAA;Gf4jED;Ee7jED;IACE,mBAAA;Gf+jED;EehkED;IACE,mBAAA;GfkkED;EenkED;IACE,UAAA;GfqkED;EetkED;IACE,mBAAA;GfwkED;EezkED;IACE,mBAAA;Gf2kED;Ee5kED;IACE,UAAA;Gf8kED;Ee/kED;IACE,mBAAA;GfilED;EellED;IACE,mBAAA;GfolED;EerlED;IACE,UAAA;GfulED;EexlED;IACE,mBAAA;Gf0lED;Ee3lED;IACE,kBAAA;Gf6lED;EezlED;IACE,WAAA;Gf2lED;Ee7kED;IACE,kBAAA;Gf+kED;EehlED;IACE,0BAAA;GfklED;EenlED;IACE,0BAAA;GfqlED;EetlED;IACE,iBAAA;GfwlED;EezlED;IACE,0BAAA;Gf2lED;Ee5lED;IACE,0BAAA;Gf8lED;Ee/lED;IACE,iBAAA;GfimED;EelmED;IACE,0BAAA;GfomED;EermED;IACE,0BAAA;GfumED;EexmED;IACE,iBAAA;Gf0mED;Ee3mED;IACE,0BAAA;Gf6mED;Ee9mED;IACE,yBAAA;GfgnED;EejnED;IACE,gBAAA;GfmnED;CACF;AgBvrED;EACE,8BAAA;ChByrED;AgBvrED;EACE,iBAAA;EACA,oBAAA;EACA,eAAA;EACA,iBAAA;ChByrED;AgBvrED;EACE,iBAAA;ChByrED;AgBnrED;EACE,YAAA;EACA,gBAAA;EACA,oBAAA;ChBqrED;AgBxrED;;;;;;EAWQ,aAAA;EACA,wBAAA;EACA,oBAAA;EACA,2BAAA;ChBqrEP;AgBnsED;EAoBI,uBAAA;EACA,8BAAA;ChBkrEH;AgBvsED;;;;;;EA8BQ,cAAA;ChBirEP;AgB/sED;EAoCI,2BAAA;ChB8qEH;AgBltED;EAyCI,uBAAA;ChB4qEH;AgBrqED;;;;;;EAOQ,aAAA;ChBsqEP;AgB3pED;EACE,uBAAA;ChB6pED;AgB9pED;;;;;;EAQQ,uBAAA;ChB8pEP;AgBtqED;;EAeM,yBAAA;ChB2pEL;AgBjpED;EAEI,0BAAA;ChBkpEH;AgBzoED;EAEI,0BAAA;ChB0oEH;AgBjoED;EACE,iBAAA;EACA,YAAA;EACA,sBAAA;ChBmoED;AgB9nEG;;EACE,iBAAA;EACA,YAAA;EACA,oBAAA;ChBioEL;AiB7wEC;;;;;;;;;;;;EAOI,0BAAA;CjBoxEL;AiB9wEC;;;;;EAMI,0BAAA;CjB+wEL;AiBlyEC;;;;;;;;;;;;EAOI,0BAAA;CjByyEL;AiBnyEC;;;;;EAMI,0BAAA;CjBoyEL;AiBvzEC;;;;;;;;;;;;EAOI,0BAAA;CjB8zEL;AiBxzEC;;;;;EAMI,0BAAA;CjByzEL;AiB50EC;;;;;;;;;;;;EAOI,0BAAA;CjBm1EL;AiB70EC;;;;;EAMI,0BAAA;CjB80EL;AiBj2EC;;;;;;;;;;;;EAOI,0BAAA;CjBw2EL;AiBl2EC;;;;;EAMI,0BAAA;CjBm2EL;AgBjtED;EACE,iBAAA;EACA,kBAAA;ChBmtED;AgBtpED;EACA;IA3DI,YAAA;IACA,oBAAA;IACA,mBAAA;IACA,6CAAA;IACA,uBAAA;GhBotED;EgB7pEH;IAnDM,iBAAA;GhBmtEH;EgBhqEH;;;;;;IA1CY,oBAAA;GhBktET;EgBxqEH;IAlCM,UAAA;GhB6sEH;EgB3qEH;;;;;;IAzBY,eAAA;GhB4sET;EgBnrEH;;;;;;IArBY,gBAAA;GhBgtET;EgB3rEH;;;;IARY,iBAAA;GhBysET;CACF;AkBn6ED;EACE,WAAA;EACA,UAAA;EACA,UAAA;EAIA,aAAA;ClBk6ED;AkB/5ED;EACE,eAAA;EACA,YAAA;EACA,WAAA;EACA,oBAAA;EACA,gBAAA;EACA,qBAAA;EACA,eAAA;EACA,UAAA;EACA,iCAAA;ClBi6ED;AkB95ED;EACE,sBAAA;EACA,gBAAA;EACA,mBAAA;EACA,kBAAA;ClBg6ED;AkBr5ED;Eb4BE,+BAAA;EACG,4BAAA;EACK,uBAAA;CL43ET;AkBr5ED;;EAEE,gBAAA;EACA,mBAAA;EACA,oBAAA;ClBu5ED;AkBp5ED;EACE,eAAA;ClBs5ED;AkBl5ED;EACE,eAAA;EACA,YAAA;ClBo5ED;AkBh5ED;;EAEE,aAAA;ClBk5ED;AkB94ED;;;EZrEE,2CAAA;EACA,qBAAA;CNw9ED;AkB74ED;EACE,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;ClB+4ED;AkBr3ED;EACE,eAAA;EACA,YAAA;EACA,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;EbxDA,yDAAA;EACQ,iDAAA;EAyHR,uFAAA;EACK,0EAAA;EACG,uEAAA;CLwzET;AmBh8EC;EACE,sBAAA;EACA,WAAA;EdUF,uFAAA;EACQ,+EAAA;CLy7ET;AKx5EC;EACE,YAAA;EACA,WAAA;CL05EH;AKx5EC;EAA0B,YAAA;CL25E3B;AK15EC;EAAgC,YAAA;CL65EjC;AkBj4EC;EACE,UAAA;EACA,8BAAA;ClBm4EH;AkB33EC;;;EAGE,0BAAA;EACA,WAAA;ClB63EH;AkB13EC;;EAEE,oBAAA;ClB43EH;AkBx3EC;EACE,aAAA;ClB03EH;AkB92ED;EACE,yBAAA;ClBg3ED;AkBx0ED;EAtBI;;;;IACE,kBAAA;GlBo2EH;EkBj2EC;;;;;;;;IAEE,kBAAA;GlBy2EH;EkBt2EC;;;;;;;;IAEE,kBAAA;GlB82EH;CACF;AkBp2ED;EACE,oBAAA;ClBs2ED;AkB91ED;;EAEE,mBAAA;EACA,eAAA;EACA,iBAAA;EACA,oBAAA;ClBg2ED;AkBr2ED;;EAQI,iBAAA;EACA,mBAAA;EACA,iBAAA;EACA,oBAAA;EACA,gBAAA;ClBi2EH;AkB91ED;;;;EAIE,mBAAA;EACA,mBAAA;EACA,mBAAA;ClBg2ED;AkB71ED;;EAEE,iBAAA;ClB+1ED;AkB31ED;;EAEE,mBAAA;EACA,sBAAA;EACA,mBAAA;EACA,iBAAA;EACA,uBAAA;EACA,oBAAA;EACA,gBAAA;ClB61ED;AkB31ED;;EAEE,cAAA;EACA,kBAAA;ClB61ED;AkBp1EC;;;;;;EAGE,oBAAA;ClBy1EH;AkBn1EC;;;;EAEE,oBAAA;ClBu1EH;AkBj1EC;;;;EAGI,oBAAA;ClBo1EL;AkBz0ED;EAEE,iBAAA;EACA,oBAAA;EAEA,iBAAA;EACA,iBAAA;ClBy0ED;AkBv0EC;;EAEE,gBAAA;EACA,iBAAA;ClBy0EH;AkB5zED;ECnQE,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CnBkkFD;AmBhkFC;EACE,aAAA;EACA,kBAAA;CnBkkFH;AmB/jFC;;EAEE,aAAA;CnBikFH;AkBx0ED;EAEI,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;ClBy0EH;AkB/0ED;EASI,aAAA;EACA,kBAAA;ClBy0EH;AkBn1ED;;EAcI,aAAA;ClBy0EH;AkBv1ED;EAiBI,aAAA;EACA,iBAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;ClBy0EH;AkBr0ED;EC/RE,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CnBumFD;AmBrmFC;EACE,aAAA;EACA,kBAAA;CnBumFH;AmBpmFC;;EAEE,aAAA;CnBsmFH;AkBj1ED;EAEI,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;ClBk1EH;AkBx1ED;EASI,aAAA;EACA,kBAAA;ClBk1EH;AkB51ED;;EAcI,aAAA;ClBk1EH;AkBh2ED;EAiBI,aAAA;EACA,iBAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;ClBk1EH;AkBz0ED;EAEE,mBAAA;ClB00ED;AkB50ED;EAMI,sBAAA;ClBy0EH;AkBr0ED;EACE,mBAAA;EACA,OAAA;EACA,SAAA;EACA,WAAA;EACA,eAAA;EACA,YAAA;EACA,aAAA;EACA,kBAAA;EACA,mBAAA;EACA,qBAAA;ClBu0ED;AkBr0ED;;;EAGE,YAAA;EACA,aAAA;EACA,kBAAA;ClBu0ED;AkBr0ED;;;EAGE,YAAA;EACA,aAAA;EACA,kBAAA;ClBu0ED;AkBn0ED;;;;;;;;;;EC1ZI,eAAA;CnByuFH;AkB/0ED;ECtZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CL0rFT;AmBxuFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL+rFT;AkBz1ED;EC5YI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBwuFH;AkB91ED;ECtYI,eAAA;CnBuuFH;AkB91ED;;;;;;;;;;EC7ZI,eAAA;CnBuwFH;AkB12ED;ECzZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CLwtFT;AmBtwFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL6tFT;AkBp3ED;EC/YI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBswFH;AkBz3ED;ECzYI,eAAA;CnBqwFH;AkBz3ED;;;;;;;;;;EChaI,eAAA;CnBqyFH;AkBr4ED;EC5ZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CLsvFT;AmBpyFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL2vFT;AkB/4ED;EClZI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBoyFH;AkBp5ED;EC5YI,eAAA;CnBmyFH;AkBh5EC;EACE,UAAA;ClBk5EH;AkBh5EC;EACE,OAAA;ClBk5EH;AkBx4ED;EACE,eAAA;EACA,gBAAA;EACA,oBAAA;EACA,eAAA;ClB04ED;AkBvzED;EAwEA;IAtIM,sBAAA;IACA,iBAAA;IACA,uBAAA;GlBy3EH;EkBrvEH;IA/HM,sBAAA;IACA,YAAA;IACA,uBAAA;GlBu3EH;EkB1vEH;IAxHM,sBAAA;GlBq3EH;EkB7vEH;IApHM,sBAAA;IACA,uBAAA;GlBo3EH;EkBjwEH;;;IA9GQ,YAAA;GlBo3EL;EkBtwEH;IAxGM,YAAA;GlBi3EH;EkBzwEH;IApGM,iBAAA;IACA,uBAAA;GlBg3EH;EkB7wEH;;IA5FM,sBAAA;IACA,cAAA;IACA,iBAAA;IACA,uBAAA;GlB62EH;EkBpxEH;;IAtFQ,gBAAA;GlB82EL;EkBxxEH;;IAjFM,mBAAA;IACA,eAAA;GlB62EH;EkB7xEH;IA3EM,OAAA;GlB22EH;CACF;AkBj2ED;;;;EASI,cAAA;EACA,iBAAA;EACA,iBAAA;ClB81EH;AkBz2ED;;EAiBI,iBAAA;ClB41EH;AkB72ED;EJthBE,mBAAA;EACA,oBAAA;Cds4FD;AkB10EC;EAyBF;IAnCM,kBAAA;IACA,iBAAA;IACA,iBAAA;GlBw1EH;CACF;AkBx3ED;EAwCI,YAAA;ClBm1EH;AkBr0EC;EAUF;IAdQ,kBAAA;IACA,gBAAA;GlB60EL;CACF;AkBn0EC;EAEF;IANQ,iBAAA;IACA,gBAAA;GlB20EL;CACF;AoBp6FD;EACE,sBAAA;EACA,iBAAA;EACA,oBAAA;EACA,mBAAA;EACA,uBAAA;EACA,+BAAA;MAAA,2BAAA;EACA,gBAAA;EACA,uBAAA;EACA,8BAAA;EACA,oBAAA;EC0CA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,mBAAA;EhB+JA,0BAAA;EACG,uBAAA;EACC,sBAAA;EACI,kBAAA;CL+tFT;AoBv6FG;;;;;;EdnBF,2CAAA;EACA,qBAAA;CNk8FD;AoB16FC;;;EAGE,YAAA;EACA,sBAAA;CpB46FH;AoBz6FC;;EAEE,WAAA;EACA,uBAAA;Ef2BF,yDAAA;EACQ,iDAAA;CLi5FT;AoBz6FC;;;EAGE,oBAAA;EE7CF,cAAA;EAGA,0BAAA;EjB8DA,yBAAA;EACQ,iBAAA;CL05FT;AoBz6FG;;EAEE,qBAAA;CpB26FL;AoBl6FD;EC3DE,YAAA;EACA,uBAAA;EACA,mBAAA;CrBg+FD;AqB99FC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBg+FP;AqB99FC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBg+FP;AqB99FC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBg+FP;AqB99FG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBs+FT;AqBn+FC;;;EAGE,uBAAA;CrBq+FH;AqBh+FG;;;;;;;;;EAGE,uBAAA;EACI,mBAAA;CrBw+FT;AoBv9FD;ECZI,YAAA;EACA,uBAAA;CrBs+FH;AoBx9FD;EC9DE,YAAA;EACA,0BAAA;EACA,sBAAA;CrByhGD;AqBvhGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrByhGP;AqBvhGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrByhGP;AqBvhGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrByhGP;AqBvhGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB+hGT;AqB5hGC;;;EAGE,uBAAA;CrB8hGH;AqBzhGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBiiGT;AoB7gGD;ECfI,eAAA;EACA,uBAAA;CrB+hGH;AoB7gGD;EClEE,YAAA;EACA,0BAAA;EACA,sBAAA;CrBklGD;AqBhlGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBklGP;AqBhlGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBklGP;AqBhlGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBklGP;AqBhlGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBwlGT;AqBrlGC;;;EAGE,uBAAA;CrBulGH;AqBllGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrB0lGT;AoBlkGD;ECnBI,eAAA;EACA,uBAAA;CrBwlGH;AoBlkGD;ECtEE,YAAA;EACA,0BAAA;EACA,sBAAA;CrB2oGD;AqBzoGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB2oGP;AqBzoGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB2oGP;AqBzoGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB2oGP;AqBzoGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBipGT;AqB9oGC;;;EAGE,uBAAA;CrBgpGH;AqB3oGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBmpGT;AoBvnGD;ECvBI,eAAA;EACA,uBAAA;CrBipGH;AoBvnGD;EC1EE,YAAA;EACA,0BAAA;EACA,sBAAA;CrBosGD;AqBlsGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBosGP;AqBlsGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBosGP;AqBlsGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBosGP;AqBlsGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB0sGT;AqBvsGC;;;EAGE,uBAAA;CrBysGH;AqBpsGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrB4sGT;AoB5qGD;EC3BI,eAAA;EACA,uBAAA;CrB0sGH;AoB5qGD;EC9EE,YAAA;EACA,0BAAA;EACA,sBAAA;CrB6vGD;AqB3vGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB6vGP;AqB3vGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB6vGP;AqB3vGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB6vGP;AqB3vGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBmwGT;AqBhwGC;;;EAGE,uBAAA;CrBkwGH;AqB7vGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBqwGT;AoBjuGD;EC/BI,eAAA;EACA,uBAAA;CrBmwGH;AoB5tGD;EACE,eAAA;EACA,oBAAA;EACA,iBAAA;CpB8tGD;AoB5tGC;;;;;EAKE,8BAAA;EfnCF,yBAAA;EACQ,iBAAA;CLkwGT;AoB7tGC;;;;EAIE,0BAAA;CpB+tGH;AoB7tGC;;EAEE,eAAA;EACA,2BAAA;EACA,8BAAA;CpB+tGH;AoB3tGG;;;;EAEE,eAAA;EACA,sBAAA;CpB+tGL;AoBttGD;;ECxEE,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CrBkyGD;AoBztGD;;EC5EE,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CrByyGD;AoB5tGD;;EChFE,iBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CrBgzGD;AoB3tGD;EACE,eAAA;EACA,YAAA;CpB6tGD;AoBztGD;EACE,gBAAA;CpB2tGD;AoBptGC;;;EACE,YAAA;CpBwtGH;AuBl3GD;EACE,WAAA;ElBoLA,yCAAA;EACK,oCAAA;EACG,iCAAA;CLisGT;AuBr3GC;EACE,WAAA;CvBu3GH;AuBn3GD;EACE,cAAA;CvBq3GD;AuBn3GC;EAAY,eAAA;CvBs3Gb;AuBr3GC;EAAY,mBAAA;CvBw3Gb;AuBv3GC;EAAY,yBAAA;CvB03Gb;AuBv3GD;EACE,mBAAA;EACA,UAAA;EACA,iBAAA;ElBuKA,gDAAA;EACQ,2CAAA;KAAA,wCAAA;EAOR,mCAAA;EACQ,8BAAA;KAAA,2BAAA;EAGR,yCAAA;EACQ,oCAAA;KAAA,iCAAA;CL2sGT;AwBr5GD;EACE,sBAAA;EACA,SAAA;EACA,UAAA;EACA,iBAAA;EACA,uBAAA;EACA,uBAAA;EACA,yBAAA;EACA,oCAAA;EACA,mCAAA;CxBu5GD;AwBn5GD;;EAEE,mBAAA;CxBq5GD;AwBj5GD;EACE,WAAA;CxBm5GD;AwB/4GD;EACE,mBAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,gBAAA;EACA,iBAAA;EACA,uBAAA;EACA,uBAAA;EACA,sCAAA;EACA,mBAAA;EnBsBA,oDAAA;EACQ,4CAAA;EmBrBR,qCAAA;UAAA,6BAAA;CxBk5GD;AwB74GC;EACE,SAAA;EACA,WAAA;CxB+4GH;AwBx6GD;ECzBE,YAAA;EACA,cAAA;EACA,iBAAA;EACA,0BAAA;CzBo8GD;AwB96GD;EAmCI,eAAA;EACA,kBAAA;EACA,YAAA;EACA,oBAAA;EACA,wBAAA;EACA,eAAA;EACA,oBAAA;CxB84GH;AwBx4GC;;EAEE,sBAAA;EACA,eAAA;EACA,0BAAA;CxB04GH;AwBp4GC;;;EAGE,YAAA;EACA,sBAAA;EACA,WAAA;EACA,0BAAA;CxBs4GH;AwB73GC;;;EAGE,eAAA;CxB+3GH;AwB33GC;;EAEE,sBAAA;EACA,8BAAA;EACA,uBAAA;EE3GF,oEAAA;EF6GE,oBAAA;CxB63GH;AwBx3GD;EAGI,eAAA;CxBw3GH;AwB33GD;EAQI,WAAA;CxBs3GH;AwB92GD;EACE,WAAA;EACA,SAAA;CxBg3GD;AwBx2GD;EACE,QAAA;EACA,YAAA;CxB02GD;AwBt2GD;EACE,eAAA;EACA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,oBAAA;CxBw2GD;AwBp2GD;EACE,gBAAA;EACA,QAAA;EACA,SAAA;EACA,UAAA;EACA,OAAA;EACA,aAAA;CxBs2GD;AwBl2GD;EACE,SAAA;EACA,WAAA;CxBo2GD;AwB51GD;;EAII,cAAA;EACA,0BAAA;EACA,4BAAA;EACA,YAAA;CxB41GH;AwBn2GD;;EAWI,UAAA;EACA,aAAA;EACA,mBAAA;CxB41GH;AwBv0GD;EAXE;IApEA,WAAA;IACA,SAAA;GxB05GC;EwBv1GD;IA1DA,QAAA;IACA,YAAA;GxBo5GC;CACF;A2BpiHD;;EAEE,mBAAA;EACA,sBAAA;EACA,uBAAA;C3BsiHD;A2B1iHD;;EAMI,mBAAA;EACA,YAAA;C3BwiHH;A2BtiHG;;;;;;;;EAIE,WAAA;C3B4iHL;A2BtiHD;;;;EAKI,kBAAA;C3BuiHH;A2BliHD;EACE,kBAAA;C3BoiHD;A2BriHD;;;EAOI,YAAA;C3BmiHH;A2B1iHD;;;EAYI,iBAAA;C3BmiHH;A2B/hHD;EACE,iBAAA;C3BiiHD;A2B7hHD;EACE,eAAA;C3B+hHD;A2B9hHC;EClDA,8BAAA;EACG,2BAAA;C5BmlHJ;A2B7hHD;;EC/CE,6BAAA;EACG,0BAAA;C5BglHJ;A2B5hHD;EACE,YAAA;C3B8hHD;A2B5hHD;EACE,iBAAA;C3B8hHD;A2B5hHD;;ECnEE,8BAAA;EACG,2BAAA;C5BmmHJ;A2B3hHD;ECjEE,6BAAA;EACG,0BAAA;C5B+lHJ;A2B1hHD;;EAEE,WAAA;C3B4hHD;A2B3gHD;EACE,kBAAA;EACA,mBAAA;C3B6gHD;A2B3gHD;EACE,mBAAA;EACA,oBAAA;C3B6gHD;A2BxgHD;EtB/CE,yDAAA;EACQ,iDAAA;CL0jHT;A2BxgHC;EtBnDA,yBAAA;EACQ,iBAAA;CL8jHT;A2BrgHD;EACE,eAAA;C3BugHD;A2BpgHD;EACE,wBAAA;EACA,uBAAA;C3BsgHD;A2BngHD;EACE,wBAAA;C3BqgHD;A2B9/GD;;;EAII,eAAA;EACA,YAAA;EACA,YAAA;EACA,gBAAA;C3B+/GH;A2BtgHD;EAcM,YAAA;C3B2/GL;A2BzgHD;;;;EAsBI,iBAAA;EACA,eAAA;C3By/GH;A2Bp/GC;EACE,iBAAA;C3Bs/GH;A2Bp/GC;EC3KA,6BAAA;EACC,4BAAA;EAOD,8BAAA;EACC,6BAAA;C5B4pHF;A2Bt/GC;EC/KA,2BAAA;EACC,0BAAA;EAOD,gCAAA;EACC,+BAAA;C5BkqHF;A2Bv/GD;EACE,iBAAA;C3By/GD;A2Bv/GD;;EC/KE,8BAAA;EACC,6BAAA;C5B0qHF;A2Bt/GD;EC7LE,2BAAA;EACC,0BAAA;C5BsrHF;A2Bl/GD;EACE,eAAA;EACA,YAAA;EACA,oBAAA;EACA,0BAAA;C3Bo/GD;A2Bx/GD;;EAOI,YAAA;EACA,oBAAA;EACA,UAAA;C3Bq/GH;A2B9/GD;EAYI,YAAA;C3Bq/GH;A2BjgHD;EAgBI,WAAA;C3Bo/GH;A2Bn+GD;;;;EAKM,mBAAA;EACA,uBAAA;EACA,qBAAA;C3Bo+GL;A6B9sHD;EACE,mBAAA;EACA,eAAA;EACA,0BAAA;C7BgtHD;A6B7sHC;EACE,YAAA;EACA,gBAAA;EACA,iBAAA;C7B+sHH;A6BxtHD;EAeI,mBAAA;EACA,WAAA;EAKA,YAAA;EAEA,YAAA;EACA,iBAAA;C7BusHH;A6BrsHG;EACE,WAAA;C7BusHL;A6B7rHD;;;EV0BE,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CnBwqHD;AmBtqHC;;;EACE,aAAA;EACA,kBAAA;CnB0qHH;AmBvqHC;;;;;;EAEE,aAAA;CnB6qHH;A6B/sHD;;;EVqBE,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CnB+rHD;AmB7rHC;;;EACE,aAAA;EACA,kBAAA;CnBisHH;AmB9rHC;;;;;;EAEE,aAAA;CnBosHH;A6B7tHD;;;EAGE,oBAAA;C7B+tHD;A6B7tHC;;;EACE,iBAAA;C7BiuHH;A6B7tHD;;EAEE,UAAA;EACA,oBAAA;EACA,uBAAA;C7B+tHD;A6B1tHD;EACE,kBAAA;EACA,gBAAA;EACA,oBAAA;EACA,eAAA;EACA,eAAA;EACA,mBAAA;EACA,0BAAA;EACA,uBAAA;EACA,mBAAA;C7B4tHD;A6BztHC;EACE,kBAAA;EACA,gBAAA;EACA,mBAAA;C7B2tHH;A6BztHC;EACE,mBAAA;EACA,gBAAA;EACA,mBAAA;C7B2tHH;A6B/uHD;;EA0BI,cAAA;C7BytHH;A6BptHD;;;;;;;EDpGE,8BAAA;EACG,2BAAA;C5Bi0HJ;A6BrtHD;EACE,gBAAA;C7ButHD;A6BrtHD;;;;;;;EDxGE,6BAAA;EACG,0BAAA;C5Bs0HJ;A6BttHD;EACE,eAAA;C7BwtHD;A6BntHD;EACE,mBAAA;EAGA,aAAA;EACA,oBAAA;C7BmtHD;A6BxtHD;EAUI,mBAAA;C7BitHH;A6B3tHD;EAYM,kBAAA;C7BktHL;A6B/sHG;;;EAGE,WAAA;C7BitHL;A6B5sHC;;EAGI,mBAAA;C7B6sHL;A6B1sHC;;EAGI,WAAA;EACA,kBAAA;C7B2sHL;A8B12HD;EACE,iBAAA;EACA,gBAAA;EACA,iBAAA;C9B42HD;A8B/2HD;EAOI,mBAAA;EACA,eAAA;C9B22HH;A8Bn3HD;EAWM,mBAAA;EACA,eAAA;EACA,mBAAA;C9B22HL;A8B12HK;;EAEE,sBAAA;EACA,0BAAA;C9B42HP;A8Bv2HG;EACE,eAAA;C9By2HL;A8Bv2HK;;EAEE,eAAA;EACA,sBAAA;EACA,8BAAA;EACA,oBAAA;C9By2HP;A8Bl2HG;;;EAGE,0BAAA;EACA,sBAAA;C9Bo2HL;A8B74HD;ELHE,YAAA;EACA,cAAA;EACA,iBAAA;EACA,0BAAA;CzBm5HD;A8Bn5HD;EA0DI,gBAAA;C9B41HH;A8Bn1HD;EACE,8BAAA;C9Bq1HD;A8Bt1HD;EAGI,YAAA;EAEA,oBAAA;C9Bq1HH;A8B11HD;EASM,kBAAA;EACA,wBAAA;EACA,8BAAA;EACA,2BAAA;C9Bo1HL;A8Bn1HK;EACE,mCAAA;C9Bq1HP;A8B/0HK;;;EAGE,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,iCAAA;EACA,gBAAA;C9Bi1HP;A8B50HC;EAqDA,YAAA;EA8BA,iBAAA;C9B6vHD;A8Bh1HC;EAwDE,YAAA;C9B2xHH;A8Bn1HC;EA0DI,mBAAA;EACA,mBAAA;C9B4xHL;A8Bv1HC;EAgEE,UAAA;EACA,WAAA;C9B0xHH;A8B9wHD;EA0DA;IAjEM,oBAAA;IACA,UAAA;G9ByxHH;E8BztHH;IA9DQ,iBAAA;G9B0xHL;CACF;A8Bp2HC;EAuFE,gBAAA;EACA,mBAAA;C9BgxHH;A8Bx2HC;;;EA8FE,uBAAA;C9B+wHH;A8BjwHD;EA2BA;IApCM,8BAAA;IACA,2BAAA;G9B8wHH;E8B3uHH;;;IA9BM,0BAAA;G9B8wHH;CACF;A8B/2HD;EAEI,YAAA;C9Bg3HH;A8Bl3HD;EAMM,mBAAA;C9B+2HL;A8Br3HD;EASM,iBAAA;C9B+2HL;A8B12HK;;;EAGE,YAAA;EACA,0BAAA;C9B42HP;A8Bp2HD;EAEI,YAAA;C9Bq2HH;A8Bv2HD;EAIM,gBAAA;EACA,eAAA;C9Bs2HL;A8B11HD;EACE,YAAA;C9B41HD;A8B71HD;EAII,YAAA;C9B41HH;A8Bh2HD;EAMM,mBAAA;EACA,mBAAA;C9B61HL;A8Bp2HD;EAYI,UAAA;EACA,WAAA;C9B21HH;A8B/0HD;EA0DA;IAjEM,oBAAA;IACA,UAAA;G9B01HH;E8B1xHH;IA9DQ,iBAAA;G9B21HL;CACF;A8Bn1HD;EACE,iBAAA;C9Bq1HD;A8Bt1HD;EAKI,gBAAA;EACA,mBAAA;C9Bo1HH;A8B11HD;;;EAYI,uBAAA;C9Bm1HH;A8Br0HD;EA2BA;IApCM,8BAAA;IACA,2BAAA;G9Bk1HH;E8B/yHH;;;IA9BM,0BAAA;G9Bk1HH;CACF;A8Bz0HD;EAEI,cAAA;C9B00HH;A8B50HD;EAKI,eAAA;C9B00HH;A8Bj0HD;EAEE,iBAAA;EF3OA,2BAAA;EACC,0BAAA;C5B8iIF;A+BxiID;EACE,mBAAA;EACA,iBAAA;EACA,oBAAA;EACA,8BAAA;C/B0iID;A+BliID;EA8nBA;IAhoBI,mBAAA;G/BwiID;CACF;A+BzhID;EAgnBA;IAlnBI,YAAA;G/B+hID;CACF;A+BjhID;EACE,oBAAA;EACA,oBAAA;EACA,mBAAA;EACA,kCAAA;EACA,2DAAA;UAAA,mDAAA;EAEA,kCAAA;C/BkhID;A+BhhIC;EACE,iBAAA;C/BkhIH;A+Bt/HD;EA6jBA;IArlBI,YAAA;IACA,cAAA;IACA,yBAAA;YAAA,iBAAA;G/BkhID;E+BhhIC;IACE,0BAAA;IACA,wBAAA;IACA,kBAAA;IACA,6BAAA;G/BkhIH;E+B/gIC;IACE,oBAAA;G/BihIH;E+B5gIC;;;IAGE,gBAAA;IACA,iBAAA;G/B8gIH;CACF;A+B1gID;;EAGI,kBAAA;C/B2gIH;A+BtgIC;EAmjBF;;IArjBM,kBAAA;G/B6gIH;CACF;A+BpgID;;;;EAII,oBAAA;EACA,mBAAA;C/BsgIH;A+BhgIC;EAgiBF;;;;IAniBM,gBAAA;IACA,eAAA;G/B0gIH;CACF;A+B9/HD;EACE,cAAA;EACA,sBAAA;C/BggID;A+B3/HD;EA8gBA;IAhhBI,iBAAA;G/BigID;CACF;A+B7/HD;;EAEE,gBAAA;EACA,SAAA;EACA,QAAA;EACA,cAAA;C/B+/HD;A+Bz/HD;EAggBA;;IAlgBI,iBAAA;G/BggID;CACF;A+B9/HD;EACE,OAAA;EACA,sBAAA;C/BggID;A+B9/HD;EACE,UAAA;EACA,iBAAA;EACA,sBAAA;C/BggID;A+B1/HD;EACE,YAAA;EACA,mBAAA;EACA,gBAAA;EACA,kBAAA;EACA,aAAA;C/B4/HD;A+B1/HC;;EAEE,sBAAA;C/B4/HH;A+BrgID;EAaI,eAAA;C/B2/HH;A+Bl/HD;EALI;;IAEE,mBAAA;G/B0/HH;CACF;A+Bh/HD;EACE,mBAAA;EACA,aAAA;EACA,mBAAA;EACA,kBAAA;EC9LA,gBAAA;EACA,mBAAA;ED+LA,8BAAA;EACA,uBAAA;EACA,8BAAA;EACA,mBAAA;C/Bm/HD;A+B/+HC;EACE,WAAA;C/Bi/HH;A+B//HD;EAmBI,eAAA;EACA,YAAA;EACA,YAAA;EACA,mBAAA;C/B++HH;A+BrgID;EAyBI,gBAAA;C/B++HH;A+Bz+HD;EAqbA;IAvbI,cAAA;G/B++HD;CACF;A+Bt+HD;EACE,oBAAA;C/Bw+HD;A+Bz+HD;EAII,kBAAA;EACA,qBAAA;EACA,kBAAA;C/Bw+HH;A+B58HC;EA2YF;IAjaM,iBAAA;IACA,YAAA;IACA,YAAA;IACA,cAAA;IACA,8BAAA;IACA,UAAA;IACA,yBAAA;YAAA,iBAAA;G/Bs+HH;E+B3kHH;;IAxZQ,2BAAA;G/Bu+HL;E+B/kHH;IArZQ,kBAAA;G/Bu+HL;E+Bt+HK;;IAEE,uBAAA;G/Bw+HP;CACF;A+Bt9HD;EA+XA;IA1YI,YAAA;IACA,UAAA;G/Bq+HD;E+B5lHH;IAtYM,YAAA;G/Bq+HH;E+B/lHH;IApYQ,kBAAA;IACA,qBAAA;G/Bs+HL;CACF;A+B39HD;EACE,mBAAA;EACA,oBAAA;EACA,mBAAA;EACA,kCAAA;EACA,qCAAA;E1B9NA,6FAAA;EACQ,qFAAA;E2B/DR,gBAAA;EACA,mBAAA;ChC4vID;AkBtuHD;EAwEA;IAtIM,sBAAA;IACA,iBAAA;IACA,uBAAA;GlBwyHH;EkBpqHH;IA/HM,sBAAA;IACA,YAAA;IACA,uBAAA;GlBsyHH;EkBzqHH;IAxHM,sBAAA;GlBoyHH;EkB5qHH;IApHM,sBAAA;IACA,uBAAA;GlBmyHH;EkBhrHH;;;IA9GQ,YAAA;GlBmyHL;EkBrrHH;IAxGM,YAAA;GlBgyHH;EkBxrHH;IApGM,iBAAA;IACA,uBAAA;GlB+xHH;EkB5rHH;;IA5FM,sBAAA;IACA,cAAA;IACA,iBAAA;IACA,uBAAA;GlB4xHH;EkBnsHH;;IAtFQ,gBAAA;GlB6xHL;EkBvsHH;;IAjFM,mBAAA;IACA,eAAA;GlB4xHH;EkB5sHH;IA3EM,OAAA;GlB0xHH;CACF;A+BpgIC;EAmWF;IAzWM,mBAAA;G/B8gIH;E+B5gIG;IACE,iBAAA;G/B8gIL;CACF;A+B7/HD;EAoVA;IA5VI,YAAA;IACA,UAAA;IACA,eAAA;IACA,gBAAA;IACA,eAAA;IACA,kBAAA;I1BzPF,yBAAA;IACQ,iBAAA;GLmwIP;CACF;A+BngID;EACE,cAAA;EHpUA,2BAAA;EACC,0BAAA;C5B00IF;A+BngID;EACE,iBAAA;EHzUA,6BAAA;EACC,4BAAA;EAOD,8BAAA;EACC,6BAAA;C5By0IF;A+B//HD;EChVE,gBAAA;EACA,mBAAA;ChCk1ID;A+BhgIC;ECnVA,iBAAA;EACA,oBAAA;ChCs1ID;A+BjgIC;ECtVA,iBAAA;EACA,oBAAA;ChC01ID;A+B3/HD;EChWE,iBAAA;EACA,oBAAA;ChC81ID;A+Bv/HD;EAsSA;IA1SI,YAAA;IACA,kBAAA;IACA,mBAAA;G/B+/HD;CACF;A+Bl+HD;EAhBE;IExWA,uBAAA;GjC81IC;E+Br/HD;IE5WA,wBAAA;IF8WE,oBAAA;G/Bu/HD;E+Bz/HD;IAKI,gBAAA;G/Bu/HH;CACF;A+B9+HD;EACE,0BAAA;EACA,sBAAA;C/Bg/HD;A+Bl/HD;EAKI,YAAA;C/Bg/HH;A+B/+HG;;EAEE,eAAA;EACA,8BAAA;C/Bi/HL;A+B1/HD;EAcI,YAAA;C/B++HH;A+B7/HD;EAmBM,YAAA;C/B6+HL;A+B3+HK;;EAEE,YAAA;EACA,8BAAA;C/B6+HP;A+Bz+HK;;;EAGE,YAAA;EACA,0BAAA;C/B2+HP;A+Bv+HK;;;EAGE,YAAA;EACA,8BAAA;C/By+HP;A+BjhID;EA8CI,mBAAA;C/Bs+HH;A+Br+HG;;EAEE,uBAAA;C/Bu+HL;A+BxhID;EAoDM,uBAAA;C/Bu+HL;A+B3hID;;EA0DI,sBAAA;C/Bq+HH;A+B99HK;;;EAGE,0BAAA;EACA,YAAA;C/Bg+HP;A+B/7HC;EAoKF;IA7LU,YAAA;G/B49HP;E+B39HO;;IAEE,YAAA;IACA,8BAAA;G/B69HT;E+Bz9HO;;;IAGE,YAAA;IACA,0BAAA;G/B29HT;E+Bv9HO;;;IAGE,YAAA;IACA,8BAAA;G/By9HT;CACF;A+B3jID;EA8GI,YAAA;C/Bg9HH;A+B/8HG;EACE,YAAA;C/Bi9HL;A+BjkID;EAqHI,YAAA;C/B+8HH;A+B98HG;;EAEE,YAAA;C/Bg9HL;A+B58HK;;;;EAEE,YAAA;C/Bg9HP;A+Bx8HD;EACE,uBAAA;EACA,sBAAA;C/B08HD;A+B58HD;EAKI,eAAA;C/B08HH;A+Bz8HG;;EAEE,YAAA;EACA,8BAAA;C/B28HL;A+Bp9HD;EAcI,eAAA;C/By8HH;A+Bv9HD;EAmBM,eAAA;C/Bu8HL;A+Br8HK;;EAEE,YAAA;EACA,8BAAA;C/Bu8HP;A+Bn8HK;;;EAGE,YAAA;EACA,0BAAA;C/Bq8HP;A+Bj8HK;;;EAGE,YAAA;EACA,8BAAA;C/Bm8HP;A+B3+HD;EA+CI,mBAAA;C/B+7HH;A+B97HG;;EAEE,uBAAA;C/Bg8HL;A+Bl/HD;EAqDM,uBAAA;C/Bg8HL;A+Br/HD;;EA2DI,sBAAA;C/B87HH;A+Bx7HK;;;EAGE,0BAAA;EACA,YAAA;C/B07HP;A+Bn5HC;EAwBF;IAvDU,sBAAA;G/Bs7HP;E+B/3HH;IApDU,0BAAA;G/Bs7HP;E+Bl4HH;IAjDU,eAAA;G/Bs7HP;E+Br7HO;;IAEE,YAAA;IACA,8BAAA;G/Bu7HT;E+Bn7HO;;;IAGE,YAAA;IACA,0BAAA;G/Bq7HT;E+Bj7HO;;;IAGE,YAAA;IACA,8BAAA;G/Bm7HT;CACF;A+B3hID;EA+GI,eAAA;C/B+6HH;A+B96HG;EACE,YAAA;C/Bg7HL;A+BjiID;EAsHI,eAAA;C/B86HH;A+B76HG;;EAEE,YAAA;C/B+6HL;A+B36HK;;;;EAEE,YAAA;C/B+6HP;AkCzjJD;EACE,kBAAA;EACA,oBAAA;EACA,iBAAA;EACA,0BAAA;EACA,mBAAA;ClC2jJD;AkChkJD;EAQI,sBAAA;ClC2jJH;AkCnkJD;EAWM,kBAAA;EACA,eAAA;EACA,YAAA;ClC2jJL;AkCxkJD;EAkBI,eAAA;ClCyjJH;AmC7kJD;EACE,sBAAA;EACA,gBAAA;EACA,eAAA;EACA,mBAAA;CnC+kJD;AmCnlJD;EAOI,gBAAA;CnC+kJH;AmCtlJD;;EAUM,mBAAA;EACA,YAAA;EACA,kBAAA;EACA,wBAAA;EACA,sBAAA;EACA,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,kBAAA;CnCglJL;AmC9kJG;;EAGI,eAAA;EPXN,+BAAA;EACG,4BAAA;C5B2lJJ;AmC7kJG;;EPvBF,gCAAA;EACG,6BAAA;C5BwmJJ;AmCxkJG;;;;EAEE,WAAA;EACA,eAAA;EACA,0BAAA;EACA,mBAAA;CnC4kJL;AmCtkJG;;;;;;EAGE,WAAA;EACA,YAAA;EACA,0BAAA;EACA,sBAAA;EACA,gBAAA;CnC2kJL;AmCloJD;;;;;;EAkEM,eAAA;EACA,uBAAA;EACA,mBAAA;EACA,oBAAA;CnCwkJL;AmC/jJD;;EC3EM,mBAAA;EACA,gBAAA;EACA,uBAAA;CpC8oJL;AoC5oJG;;ERKF,+BAAA;EACG,4BAAA;C5B2oJJ;AoC3oJG;;ERTF,gCAAA;EACG,6BAAA;C5BwpJJ;AmC1kJD;;EChFM,kBAAA;EACA,gBAAA;EACA,iBAAA;CpC8pJL;AoC5pJG;;ERKF,+BAAA;EACG,4BAAA;C5B2pJJ;AoC3pJG;;ERTF,gCAAA;EACG,6BAAA;C5BwqJJ;AqC3qJD;EACE,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,mBAAA;CrC6qJD;AqCjrJD;EAOI,gBAAA;CrC6qJH;AqCprJD;;EAUM,sBAAA;EACA,kBAAA;EACA,uBAAA;EACA,uBAAA;EACA,oBAAA;CrC8qJL;AqC5rJD;;EAmBM,sBAAA;EACA,0BAAA;CrC6qJL;AqCjsJD;;EA2BM,aAAA;CrC0qJL;AqCrsJD;;EAkCM,YAAA;CrCuqJL;AqCzsJD;;;;EA2CM,eAAA;EACA,uBAAA;EACA,oBAAA;CrCoqJL;AsCltJD;EACE,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,kBAAA;EACA,eAAA;EACA,YAAA;EACA,mBAAA;EACA,oBAAA;EACA,yBAAA;EACA,qBAAA;CtCotJD;AsChtJG;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;CtCktJL;AsC7sJC;EACE,cAAA;CtC+sJH;AsC3sJC;EACE,mBAAA;EACA,UAAA;CtC6sJH;AsCtsJD;ECtCE,0BAAA;CvC+uJD;AuC5uJG;;EAEE,0BAAA;CvC8uJL;AsCzsJD;EC1CE,0BAAA;CvCsvJD;AuCnvJG;;EAEE,0BAAA;CvCqvJL;AsC5sJD;EC9CE,0BAAA;CvC6vJD;AuC1vJG;;EAEE,0BAAA;CvC4vJL;AsC/sJD;EClDE,0BAAA;CvCowJD;AuCjwJG;;EAEE,0BAAA;CvCmwJL;AsCltJD;ECtDE,0BAAA;CvC2wJD;AuCxwJG;;EAEE,0BAAA;CvC0wJL;AsCrtJD;EC1DE,0BAAA;CvCkxJD;AuC/wJG;;EAEE,0BAAA;CvCixJL;AwCnxJD;EACE,sBAAA;EACA,gBAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,eAAA;EACA,uBAAA;EACA,oBAAA;EACA,mBAAA;EACA,0BAAA;EACA,oBAAA;CxCqxJD;AwClxJC;EACE,cAAA;CxCoxJH;AwChxJC;EACE,mBAAA;EACA,UAAA;CxCkxJH;AwC/wJC;;EAEE,OAAA;EACA,iBAAA;CxCixJH;AwC5wJG;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;CxC8wJL;AwCzwJC;;EAEE,eAAA;EACA,uBAAA;CxC2wJH;AwCxwJC;EACE,aAAA;CxC0wJH;AwCvwJC;EACE,kBAAA;CxCywJH;AwCtwJC;EACE,iBAAA;CxCwwJH;AyCl0JD;EACE,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,eAAA;EACA,0BAAA;CzCo0JD;AyCz0JD;;EASI,eAAA;CzCo0JH;AyC70JD;EAaI,oBAAA;EACA,gBAAA;EACA,iBAAA;CzCm0JH;AyCl1JD;EAmBI,0BAAA;CzCk0JH;AyC/zJC;;EAEE,mBAAA;EACA,mBAAA;EACA,oBAAA;CzCi0JH;AyC31JD;EA8BI,gBAAA;CzCg0JH;AyC9yJD;EACA;IAfI,kBAAA;IACA,qBAAA;GzCg0JD;EyC9zJC;;IAEE,mBAAA;IACA,oBAAA;GzCg0JH;EyCvzJH;;IAJM,gBAAA;GzC+zJH;CACF;A0C52JD;EACE,eAAA;EACA,aAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;ErCiLA,4CAAA;EACK,uCAAA;EACG,oCAAA;CL8rJT;A0Cx3JD;;EAaI,kBAAA;EACA,mBAAA;C1C+2JH;A0C32JC;;;EAGE,sBAAA;C1C62JH;A0Cl4JD;EA0BI,aAAA;EACA,eAAA;C1C22JH;A2Cp4JD;EACE,cAAA;EACA,oBAAA;EACA,8BAAA;EACA,mBAAA;C3Cs4JD;A2C14JD;EAQI,cAAA;EAEA,eAAA;C3Co4JH;A2C94JD;EAeI,kBAAA;C3Ck4JH;A2Cj5JD;;EAqBI,iBAAA;C3Cg4JH;A2Cr5JD;EAyBI,gBAAA;C3C+3JH;A2Cv3JD;;EAEE,oBAAA;C3Cy3JD;A2C33JD;;EAMI,mBAAA;EACA,UAAA;EACA,aAAA;EACA,eAAA;C3Cy3JH;A2Cj3JD;ECvDE,0BAAA;EACA,sBAAA;EACA,eAAA;C5C26JD;A2Ct3JD;EClDI,0BAAA;C5C26JH;A2Cz3JD;EC/CI,eAAA;C5C26JH;A2Cx3JD;EC3DE,0BAAA;EACA,sBAAA;EACA,eAAA;C5Cs7JD;A2C73JD;ECtDI,0BAAA;C5Cs7JH;A2Ch4JD;ECnDI,eAAA;C5Cs7JH;A2C/3JD;EC/DE,0BAAA;EACA,sBAAA;EACA,eAAA;C5Ci8JD;A2Cp4JD;EC1DI,0BAAA;C5Ci8JH;A2Cv4JD;ECvDI,eAAA;C5Ci8JH;A2Ct4JD;ECnEE,0BAAA;EACA,sBAAA;EACA,eAAA;C5C48JD;A2C34JD;EC9DI,0BAAA;C5C48JH;A2C94JD;EC3DI,eAAA;C5C48JH;A6C98JD;EACE;IAAQ,4BAAA;G7Ci9JP;E6Ch9JD;IAAQ,yBAAA;G7Cm9JP;CACF;A6Ch9JD;EACE;IAAQ,4BAAA;G7Cm9JP;E6Cl9JD;IAAQ,yBAAA;G7Cq9JP;CACF;A6Cx9JD;EACE;IAAQ,4BAAA;G7Cm9JP;E6Cl9JD;IAAQ,yBAAA;G7Cq9JP;CACF;A6C98JD;EACE,iBAAA;EACA,aAAA;EACA,oBAAA;EACA,0BAAA;EACA,mBAAA;ExCsCA,uDAAA;EACQ,+CAAA;CL26JT;A6C78JD;EACE,YAAA;EACA,UAAA;EACA,aAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,mBAAA;EACA,0BAAA;ExCyBA,uDAAA;EACQ,+CAAA;EAyHR,oCAAA;EACK,+BAAA;EACG,4BAAA;CL+zJT;A6C18JD;;ECCI,8MAAA;EACA,yMAAA;EACA,sMAAA;EDAF,mCAAA;UAAA,2BAAA;C7C88JD;A6Cv8JD;;ExC5CE,2DAAA;EACK,sDAAA;EACG,mDAAA;CLu/JT;A6Cp8JD;EErEE,0BAAA;C/C4gKD;A+CzgKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9C49JH;A6Cx8JD;EEzEE,0BAAA;C/CohKD;A+CjhKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9Co+JH;A6C58JD;EE7EE,0BAAA;C/C4hKD;A+CzhKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9C4+JH;A6Ch9JD;EEjFE,0BAAA;C/CoiKD;A+CjiKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9Co/JH;AgD5iKD;EAEE,iBAAA;ChD6iKD;AgD3iKC;EACE,cAAA;ChD6iKH;AgDziKD;;EAEE,QAAA;EACA,iBAAA;ChD2iKD;AgDxiKD;EACE,eAAA;ChD0iKD;AgDviKD;EACE,eAAA;ChDyiKD;AgDtiKC;EACE,gBAAA;ChDwiKH;AgDpiKD;;EAEE,mBAAA;ChDsiKD;AgDniKD;;EAEE,oBAAA;ChDqiKD;AgDliKD;;;EAGE,oBAAA;EACA,oBAAA;ChDoiKD;AgDjiKD;EACE,uBAAA;ChDmiKD;AgDhiKD;EACE,uBAAA;ChDkiKD;AgD9hKD;EACE,cAAA;EACA,mBAAA;ChDgiKD;AgD1hKD;EACE,gBAAA;EACA,iBAAA;ChD4hKD;AiDnlKD;EAEE,oBAAA;EACA,gBAAA;CjDolKD;AiD5kKD;EACE,mBAAA;EACA,eAAA;EACA,mBAAA;EAEA,oBAAA;EACA,uBAAA;EACA,uBAAA;CjD6kKD;AiD1kKC;ErB3BA,6BAAA;EACC,4BAAA;C5BwmKF;AiD3kKC;EACE,iBAAA;ErBvBF,gCAAA;EACC,+BAAA;C5BqmKF;AiDpkKD;;EAEE,YAAA;CjDskKD;AiDxkKD;;EAKI,YAAA;CjDukKH;AiDnkKC;;;;EAEE,sBAAA;EACA,YAAA;EACA,0BAAA;CjDukKH;AiDnkKD;EACE,YAAA;EACA,iBAAA;CjDqkKD;AiDhkKC;;;EAGE,0BAAA;EACA,eAAA;EACA,oBAAA;CjDkkKH;AiDvkKC;;;EASI,eAAA;CjDmkKL;AiD5kKC;;;EAYI,eAAA;CjDqkKL;AiDhkKC;;;EAGE,WAAA;EACA,YAAA;EACA,0BAAA;EACA,sBAAA;CjDkkKH;AiDxkKC;;;;;;;;;EAYI,eAAA;CjDukKL;AiDnlKC;;;EAeI,eAAA;CjDykKL;AkD3qKC;EACE,eAAA;EACA,0BAAA;ClD6qKH;AkD3qKG;;EAEE,eAAA;ClD6qKL;AkD/qKG;;EAKI,eAAA;ClD8qKP;AkD3qKK;;;;EAEE,eAAA;EACA,0BAAA;ClD+qKP;AkD7qKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClDkrKP;AkDxsKC;EACE,eAAA;EACA,0BAAA;ClD0sKH;AkDxsKG;;EAEE,eAAA;ClD0sKL;AkD5sKG;;EAKI,eAAA;ClD2sKP;AkDxsKK;;;;EAEE,eAAA;EACA,0BAAA;ClD4sKP;AkD1sKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClD+sKP;AkDruKC;EACE,eAAA;EACA,0BAAA;ClDuuKH;AkDruKG;;EAEE,eAAA;ClDuuKL;AkDzuKG;;EAKI,eAAA;ClDwuKP;AkDruKK;;;;EAEE,eAAA;EACA,0BAAA;ClDyuKP;AkDvuKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClD4uKP;AkDlwKC;EACE,eAAA;EACA,0BAAA;ClDowKH;AkDlwKG;;EAEE,eAAA;ClDowKL;AkDtwKG;;EAKI,eAAA;ClDqwKP;AkDlwKK;;;;EAEE,eAAA;EACA,0BAAA;ClDswKP;AkDpwKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClDywKP;AiDxqKD;EACE,cAAA;EACA,mBAAA;CjD0qKD;AiDxqKD;EACE,iBAAA;EACA,iBAAA;CjD0qKD;AmDpyKD;EACE,oBAAA;EACA,uBAAA;EACA,8BAAA;EACA,mBAAA;E9C0DA,kDAAA;EACQ,0CAAA;CL6uKT;AmDnyKD;EACE,cAAA;CnDqyKD;AmDhyKD;EACE,mBAAA;EACA,qCAAA;EvBpBA,6BAAA;EACC,4BAAA;C5BuzKF;AmDtyKD;EAMI,eAAA;CnDmyKH;AmD9xKD;EACE,cAAA;EACA,iBAAA;EACA,gBAAA;EACA,eAAA;CnDgyKD;AmDpyKD;;;;;EAWI,eAAA;CnDgyKH;AmD3xKD;EACE,mBAAA;EACA,0BAAA;EACA,2BAAA;EvBxCA,gCAAA;EACC,+BAAA;C5Bs0KF;AmDrxKD;;EAGI,iBAAA;CnDsxKH;AmDzxKD;;EAMM,oBAAA;EACA,iBAAA;CnDuxKL;AmDnxKG;;EAEI,cAAA;EvBvEN,6BAAA;EACC,4BAAA;C5B61KF;AmDjxKG;;EAEI,iBAAA;EvBvEN,gCAAA;EACC,+BAAA;C5B21KF;AmD1yKD;EvB1DE,2BAAA;EACC,0BAAA;C5Bu2KF;AmD7wKD;EAEI,oBAAA;CnD8wKH;AmD3wKD;EACE,oBAAA;CnD6wKD;AmDrwKD;;;EAII,iBAAA;CnDswKH;AmD1wKD;;;EAOM,mBAAA;EACA,oBAAA;CnDwwKL;AmDhxKD;;EvBzGE,6BAAA;EACC,4BAAA;C5B63KF;AmDrxKD;;;;EAmBQ,4BAAA;EACA,6BAAA;CnDwwKP;AmD5xKD;;;;;;;;EAwBU,4BAAA;CnD8wKT;AmDtyKD;;;;;;;;EA4BU,6BAAA;CnDoxKT;AmDhzKD;;EvBjGE,gCAAA;EACC,+BAAA;C5Bq5KF;AmDrzKD;;;;EAyCQ,+BAAA;EACA,gCAAA;CnDkxKP;AmD5zKD;;;;;;;;EA8CU,+BAAA;CnDwxKT;AmDt0KD;;;;;;;;EAkDU,gCAAA;CnD8xKT;AmDh1KD;;;;EA2DI,2BAAA;CnD2xKH;AmDt1KD;;EA+DI,cAAA;CnD2xKH;AmD11KD;;EAmEI,UAAA;CnD2xKH;AmD91KD;;;;;;;;;;;;EA0EU,eAAA;CnDkyKT;AmD52KD;;;;;;;;;;;;EA8EU,gBAAA;CnD4yKT;AmD13KD;;;;;;;;EAuFU,iBAAA;CnD6yKT;AmDp4KD;;;;;;;;EAgGU,iBAAA;CnD8yKT;AmD94KD;EAsGI,UAAA;EACA,iBAAA;CnD2yKH;AmDjyKD;EACE,oBAAA;CnDmyKD;AmDpyKD;EAKI,iBAAA;EACA,mBAAA;CnDkyKH;AmDxyKD;EASM,gBAAA;CnDkyKL;AmD3yKD;EAcI,iBAAA;CnDgyKH;AmD9yKD;;EAkBM,2BAAA;CnDgyKL;AmDlzKD;EAuBI,cAAA;CnD8xKH;AmDrzKD;EAyBM,8BAAA;CnD+xKL;AmDxxKD;EC1PE,mBAAA;CpDqhLD;AoDnhLC;EACE,eAAA;EACA,0BAAA;EACA,mBAAA;CpDqhLH;AoDxhLC;EAMI,uBAAA;CpDqhLL;AoD3hLC;EASI,eAAA;EACA,0BAAA;CpDqhLL;AoDlhLC;EAEI,0BAAA;CpDmhLL;AmDvyKD;EC7PE,sBAAA;CpDuiLD;AoDriLC;EACE,YAAA;EACA,0BAAA;EACA,sBAAA;CpDuiLH;AoD1iLC;EAMI,0BAAA;CpDuiLL;AoD7iLC;EASI,eAAA;EACA,uBAAA;CpDuiLL;AoDpiLC;EAEI,6BAAA;CpDqiLL;AmDtzKD;EChQE,sBAAA;CpDyjLD;AoDvjLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpDyjLH;AoD5jLC;EAMI,0BAAA;CpDyjLL;AoD/jLC;EASI,eAAA;EACA,0BAAA;CpDyjLL;AoDtjLC;EAEI,6BAAA;CpDujLL;AmDr0KD;ECnQE,sBAAA;CpD2kLD;AoDzkLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD2kLH;AoD9kLC;EAMI,0BAAA;CpD2kLL;AoDjlLC;EASI,eAAA;EACA,0BAAA;CpD2kLL;AoDxkLC;EAEI,6BAAA;CpDykLL;AmDp1KD;ECtQE,sBAAA;CpD6lLD;AoD3lLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD6lLH;AoDhmLC;EAMI,0BAAA;CpD6lLL;AoDnmLC;EASI,eAAA;EACA,0BAAA;CpD6lLL;AoD1lLC;EAEI,6BAAA;CpD2lLL;AmDn2KD;ECzQE,sBAAA;CpD+mLD;AoD7mLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD+mLH;AoDlnLC;EAMI,0BAAA;CpD+mLL;AoDrnLC;EASI,eAAA;EACA,0BAAA;CpD+mLL;AoD5mLC;EAEI,6BAAA;CpD6mLL;AqD7nLD;EACE,mBAAA;EACA,eAAA;EACA,UAAA;EACA,WAAA;EACA,iBAAA;CrD+nLD;AqDpoLD;;;;;EAYI,mBAAA;EACA,OAAA;EACA,QAAA;EACA,UAAA;EACA,aAAA;EACA,YAAA;EACA,UAAA;CrD+nLH;AqD1nLD;EACE,uBAAA;CrD4nLD;AqDxnLD;EACE,oBAAA;CrD0nLD;AsDrpLD;EACE,iBAAA;EACA,cAAA;EACA,oBAAA;EACA,0BAAA;EACA,0BAAA;EACA,mBAAA;EjDwDA,wDAAA;EACQ,gDAAA;CLgmLT;AsD/pLD;EASI,mBAAA;EACA,kCAAA;CtDypLH;AsDppLD;EACE,cAAA;EACA,mBAAA;CtDspLD;AsDppLD;EACE,aAAA;EACA,mBAAA;CtDspLD;AuD5qLD;EACE,aAAA;EACA,gBAAA;EACA,kBAAA;EACA,eAAA;EACA,YAAA;EACA,0BAAA;EjCRA,aAAA;EAGA,0BAAA;CtBqrLD;AuD7qLC;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;EjCfF,aAAA;EAGA,0BAAA;CtB6rLD;AuDzqLC;EACE,WAAA;EACA,gBAAA;EACA,wBAAA;EACA,UAAA;EACA,yBAAA;CvD2qLH;AwDhsLD;EACE,iBAAA;CxDksLD;AwD9rLD;EACE,cAAA;EACA,iBAAA;EACA,gBAAA;EACA,OAAA;EACA,SAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,kCAAA;EAIA,WAAA;CxD6rLD;AwD1rLC;EnD+GA,sCAAA;EACI,kCAAA;EACC,iCAAA;EACG,8BAAA;EAkER,oDAAA;EAEK,0CAAA;EACG,oCAAA;CL6gLT;AwDhsLC;EnD2GA,mCAAA;EACI,+BAAA;EACC,8BAAA;EACG,2BAAA;CLwlLT;AwDpsLD;EACE,mBAAA;EACA,iBAAA;CxDssLD;AwDlsLD;EACE,mBAAA;EACA,YAAA;EACA,aAAA;CxDosLD;AwDhsLD;EACE,mBAAA;EACA,uBAAA;EACA,uBAAA;EACA,qCAAA;EACA,mBAAA;EnDaA,iDAAA;EACQ,yCAAA;EmDZR,qCAAA;UAAA,6BAAA;EAEA,WAAA;CxDksLD;AwD9rLD;EACE,gBAAA;EACA,OAAA;EACA,SAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,uBAAA;CxDgsLD;AwD9rLC;ElCrEA,WAAA;EAGA,yBAAA;CtBowLD;AwDjsLC;ElCtEA,aAAA;EAGA,0BAAA;CtBwwLD;AwDhsLD;EACE,cAAA;EACA,iCAAA;CxDksLD;AwD9rLD;EACE,iBAAA;CxDgsLD;AwD5rLD;EACE,UAAA;EACA,wBAAA;CxD8rLD;AwDzrLD;EACE,mBAAA;EACA,cAAA;CxD2rLD;AwDvrLD;EACE,cAAA;EACA,kBAAA;EACA,8BAAA;CxDyrLD;AwD5rLD;EAQI,iBAAA;EACA,iBAAA;CxDurLH;AwDhsLD;EAaI,kBAAA;CxDsrLH;AwDnsLD;EAiBI,eAAA;CxDqrLH;AwDhrLD;EACE,mBAAA;EACA,aAAA;EACA,YAAA;EACA,aAAA;EACA,iBAAA;CxDkrLD;AwDhqLD;EAZE;IACE,aAAA;IACA,kBAAA;GxD+qLD;EwD7qLD;InDvEA,kDAAA;IACQ,0CAAA;GLuvLP;EwD5qLD;IAAY,aAAA;GxD+qLX;CACF;AwD1qLD;EAFE;IAAY,aAAA;GxDgrLX;CACF;AyD/zLD;EACE,mBAAA;EACA,cAAA;EACA,eAAA;ECRA,4DAAA;EAEA,mBAAA;EACA,oBAAA;EACA,uBAAA;EACA,iBAAA;EACA,wBAAA;EACA,iBAAA;EACA,kBAAA;EACA,sBAAA;EACA,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;EDHA,gBAAA;EnCVA,WAAA;EAGA,yBAAA;CtBs1LD;AyD30LC;EnCdA,aAAA;EAGA,0BAAA;CtB01LD;AyD90LC;EAAW,iBAAA;EAAmB,eAAA;CzDk1L/B;AyDj1LC;EAAW,iBAAA;EAAmB,eAAA;CzDq1L/B;AyDp1LC;EAAW,gBAAA;EAAmB,eAAA;CzDw1L/B;AyDv1LC;EAAW,kBAAA;EAAmB,eAAA;CzD21L/B;AyDv1LD;EACE,iBAAA;EACA,iBAAA;EACA,YAAA;EACA,mBAAA;EACA,uBAAA;EACA,mBAAA;CzDy1LD;AyDr1LD;EACE,mBAAA;EACA,SAAA;EACA,UAAA;EACA,0BAAA;EACA,oBAAA;CzDu1LD;AyDn1LC;EACE,UAAA;EACA,UAAA;EACA,kBAAA;EACA,wBAAA;EACA,uBAAA;CzDq1LH;AyDn1LC;EACE,UAAA;EACA,WAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;CzDq1LH;AyDn1LC;EACE,UAAA;EACA,UAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;CzDq1LH;AyDn1LC;EACE,SAAA;EACA,QAAA;EACA,iBAAA;EACA,4BAAA;EACA,yBAAA;CzDq1LH;AyDn1LC;EACE,SAAA;EACA,SAAA;EACA,iBAAA;EACA,4BAAA;EACA,wBAAA;CzDq1LH;AyDn1LC;EACE,OAAA;EACA,UAAA;EACA,kBAAA;EACA,wBAAA;EACA,0BAAA;CzDq1LH;AyDn1LC;EACE,OAAA;EACA,WAAA;EACA,iBAAA;EACA,wBAAA;EACA,0BAAA;CzDq1LH;AyDn1LC;EACE,OAAA;EACA,UAAA;EACA,iBAAA;EACA,wBAAA;EACA,0BAAA;CzDq1LH;A2Dl7LD;EACE,mBAAA;EACA,OAAA;EACA,QAAA;EACA,cAAA;EACA,cAAA;EACA,iBAAA;EACA,aAAA;EDXA,4DAAA;EAEA,mBAAA;EACA,oBAAA;EACA,uBAAA;EACA,iBAAA;EACA,wBAAA;EACA,iBAAA;EACA,kBAAA;EACA,sBAAA;EACA,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;ECAA,gBAAA;EAEA,uBAAA;EACA,qCAAA;UAAA,6BAAA;EACA,uBAAA;EACA,qCAAA;EACA,mBAAA;EtD8CA,kDAAA;EACQ,0CAAA;CLk5LT;A2D77LC;EAAY,kBAAA;C3Dg8Lb;A2D/7LC;EAAY,kBAAA;C3Dk8Lb;A2Dj8LC;EAAY,iBAAA;C3Do8Lb;A2Dn8LC;EAAY,mBAAA;C3Ds8Lb;A2Dn8LD;EACE,UAAA;EACA,kBAAA;EACA,gBAAA;EACA,0BAAA;EACA,iCAAA;EACA,2BAAA;C3Dq8LD;A2Dl8LD;EACE,kBAAA;C3Do8LD;A2D57LC;;EAEE,mBAAA;EACA,eAAA;EACA,SAAA;EACA,UAAA;EACA,0BAAA;EACA,oBAAA;C3D87LH;A2D37LD;EACE,mBAAA;C3D67LD;A2D37LD;EACE,mBAAA;EACA,YAAA;C3D67LD;A2Dz7LC;EACE,UAAA;EACA,mBAAA;EACA,uBAAA;EACA,0BAAA;EACA,sCAAA;EACA,cAAA;C3D27LH;A2D17LG;EACE,aAAA;EACA,YAAA;EACA,mBAAA;EACA,uBAAA;EACA,uBAAA;C3D47LL;A2Dz7LC;EACE,SAAA;EACA,YAAA;EACA,kBAAA;EACA,qBAAA;EACA,4BAAA;EACA,wCAAA;C3D27LH;A2D17LG;EACE,aAAA;EACA,UAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;C3D47LL;A2Dz7LC;EACE,UAAA;EACA,mBAAA;EACA,oBAAA;EACA,6BAAA;EACA,yCAAA;EACA,WAAA;C3D27LH;A2D17LG;EACE,aAAA;EACA,SAAA;EACA,mBAAA;EACA,oBAAA;EACA,0BAAA;C3D47LL;A2Dx7LC;EACE,SAAA;EACA,aAAA;EACA,kBAAA;EACA,sBAAA;EACA,2BAAA;EACA,uCAAA;C3D07LH;A2Dz7LG;EACE,aAAA;EACA,WAAA;EACA,sBAAA;EACA,wBAAA;EACA,cAAA;C3D27LL;A4DpjMD;EACE,mBAAA;C5DsjMD;A4DnjMD;EACE,mBAAA;EACA,iBAAA;EACA,YAAA;C5DqjMD;A4DxjMD;EAMI,cAAA;EACA,mBAAA;EvD6KF,0CAAA;EACK,qCAAA;EACG,kCAAA;CLy4LT;A4D/jMD;;EAcM,eAAA;C5DqjML;A4D3hMC;EA4NF;IvD3DE,uDAAA;IAEK,6CAAA;IACG,uCAAA;IA7JR,oCAAA;IAEQ,4BAAA;IA+GR,4BAAA;IAEQ,oBAAA;GL86LP;E4DzjMG;;IvDmHJ,2CAAA;IACQ,mCAAA;IuDjHF,QAAA;G5D4jML;E4D1jMG;;IvD8GJ,4CAAA;IACQ,oCAAA;IuD5GF,QAAA;G5D6jML;E4D3jMG;;;IvDyGJ,wCAAA;IACQ,gCAAA;IuDtGF,QAAA;G5D8jML;CACF;A4DpmMD;;;EA6CI,eAAA;C5D4jMH;A4DzmMD;EAiDI,QAAA;C5D2jMH;A4D5mMD;;EAsDI,mBAAA;EACA,OAAA;EACA,YAAA;C5D0jMH;A4DlnMD;EA4DI,WAAA;C5DyjMH;A4DrnMD;EA+DI,YAAA;C5DyjMH;A4DxnMD;;EAmEI,QAAA;C5DyjMH;A4D5nMD;EAuEI,YAAA;C5DwjMH;A4D/nMD;EA0EI,WAAA;C5DwjMH;A4DhjMD;EACE,mBAAA;EACA,OAAA;EACA,QAAA;EACA,UAAA;EACA,WAAA;EtC9FA,aAAA;EAGA,0BAAA;EsC6FA,gBAAA;EACA,YAAA;EACA,mBAAA;EACA,0CAAA;EACA,mCAAA;C5DmjMD;A4D9iMC;EdnGE,mGAAA;EACA,8FAAA;EACA,qHAAA;EAAA,+FAAA;EACA,4BAAA;EACA,uHAAA;C9CopMH;A4DljMC;EACE,WAAA;EACA,SAAA;EdxGA,mGAAA;EACA,8FAAA;EACA,qHAAA;EAAA,+FAAA;EACA,4BAAA;EACA,uHAAA;C9C6pMH;A4DpjMC;;EAEE,WAAA;EACA,YAAA;EACA,sBAAA;EtCvHF,aAAA;EAGA,0BAAA;CtB4qMD;A4DtlMD;;;;EAuCI,mBAAA;EACA,SAAA;EACA,kBAAA;EACA,WAAA;EACA,sBAAA;C5DqjMH;A4DhmMD;;EA+CI,UAAA;EACA,mBAAA;C5DqjMH;A4DrmMD;;EAoDI,WAAA;EACA,oBAAA;C5DqjMH;A4D1mMD;;EAyDI,YAAA;EACA,aAAA;EACA,eAAA;EACA,mBAAA;C5DqjMH;A4DhjMG;EACE,iBAAA;C5DkjML;A4D9iMG;EACE,iBAAA;C5DgjML;A4DtiMD;EACE,mBAAA;EACA,aAAA;EACA,UAAA;EACA,YAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;C5DwiMD;A4DjjMD;EAYI,sBAAA;EACA,YAAA;EACA,aAAA;EACA,YAAA;EACA,oBAAA;EACA,uBAAA;EACA,oBAAA;EACA,gBAAA;EAWA,0BAAA;EACA,mCAAA;C5D8hMH;A4D7jMD;EAkCI,UAAA;EACA,YAAA;EACA,aAAA;EACA,uBAAA;C5D8hMH;A4DvhMD;EACE,mBAAA;EACA,UAAA;EACA,WAAA;EACA,aAAA;EACA,YAAA;EACA,kBAAA;EACA,qBAAA;EACA,YAAA;EACA,mBAAA;EACA,0CAAA;C5DyhMD;A4DxhMC;EACE,kBAAA;C5D0hMH;A4Dj/LD;EAhCE;;;;IAKI,YAAA;IACA,aAAA;IACA,kBAAA;IACA,gBAAA;G5DmhMH;E4D3hMD;;IAYI,mBAAA;G5DmhMH;E4D/hMD;;IAgBI,oBAAA;G5DmhMH;E4D9gMD;IACE,UAAA;IACA,WAAA;IACA,qBAAA;G5DghMD;E4D5gMD;IACE,aAAA;G5D8gMD;CACF;A6D7wMC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEE,aAAA;EACA,eAAA;C7D6yMH;A6D3yMC;;;;;;;;;;;;;;;;EACE,YAAA;C7D4zMH;AiCp0MD;E6BRE,eAAA;EACA,kBAAA;EACA,mBAAA;C9D+0MD;AiCt0MD;EACE,wBAAA;CjCw0MD;AiCt0MD;EACE,uBAAA;CjCw0MD;AiCh0MD;EACE,yBAAA;CjCk0MD;AiCh0MD;EACE,0BAAA;CjCk0MD;AiCh0MD;EACE,mBAAA;CjCk0MD;AiCh0MD;E8BzBE,YAAA;EACA,mBAAA;EACA,kBAAA;EACA,8BAAA;EACA,UAAA;C/D41MD;AiC9zMD;EACE,yBAAA;CjCg0MD;AiCzzMD;EACE,gBAAA;CjC2zMD;AgE51MD;EACE,oBAAA;ChE81MD;AgEx1MD;;;;ECdE,yBAAA;CjE42MD;AgEv1MD;;;;;;;;;;;;EAYE,yBAAA;ChEy1MD;AgEl1MD;EA6IA;IC7LE,0BAAA;GjEs4MC;EiEr4MD;IAAU,0BAAA;GjEw4MT;EiEv4MD;IAAU,8BAAA;GjE04MT;EiEz4MD;;IACU,+BAAA;GjE44MT;CACF;AgE51MD;EAwIA;IA1II,0BAAA;GhEk2MD;CACF;AgE51MD;EAmIA;IArII,2BAAA;GhEk2MD;CACF;AgE51MD;EA8HA;IAhII,iCAAA;GhEk2MD;CACF;AgE31MD;EAwHA;IC7LE,0BAAA;GjEo6MC;EiEn6MD;IAAU,0BAAA;GjEs6MT;EiEr6MD;IAAU,8BAAA;GjEw6MT;EiEv6MD;;IACU,+BAAA;GjE06MT;CACF;AgEr2MD;EAmHA;IArHI,0BAAA;GhE22MD;CACF;AgEr2MD;EA8GA;IAhHI,2BAAA;GhE22MD;CACF;AgEr2MD;EAyGA;IA3GI,iCAAA;GhE22MD;CACF;AgEp2MD;EAmGA;IC7LE,0BAAA;GjEk8MC;EiEj8MD;IAAU,0BAAA;GjEo8MT;EiEn8MD;IAAU,8BAAA;GjEs8MT;EiEr8MD;;IACU,+BAAA;GjEw8MT;CACF;AgE92MD;EA8FA;IAhGI,0BAAA;GhEo3MD;CACF;AgE92MD;EAyFA;IA3FI,2BAAA;GhEo3MD;CACF;AgE92MD;EAoFA;IAtFI,iCAAA;GhEo3MD;CACF;AgE72MD;EA8EA;IC7LE,0BAAA;GjEg+MC;EiE/9MD;IAAU,0BAAA;GjEk+MT;EiEj+MD;IAAU,8BAAA;GjEo+MT;EiEn+MD;;IACU,+BAAA;GjEs+MT;CACF;AgEv3MD;EAyEA;IA3EI,0BAAA;GhE63MD;CACF;AgEv3MD;EAoEA;IAtEI,2BAAA;GhE63MD;CACF;AgEv3MD;EA+DA;IAjEI,iCAAA;GhE63MD;CACF;AgEt3MD;EAyDA;ICrLE,yBAAA;GjEs/MC;CACF;AgEt3MD;EAoDA;ICrLE,yBAAA;GjE2/MC;CACF;AgEt3MD;EA+CA;ICrLE,yBAAA;GjEggNC;CACF;AgEt3MD;EA0CA;ICrLE,yBAAA;GjEqgNC;CACF;AgEn3MD;ECnJE,yBAAA;CjEygND;AgEh3MD;EA4BA;IC7LE,0BAAA;GjEqhNC;EiEphND;IAAU,0BAAA;GjEuhNT;EiEthND;IAAU,8BAAA;GjEyhNT;EiExhND;;IACU,+BAAA;GjE2hNT;CACF;AgE93MD;EACE,yBAAA;ChEg4MD;AgE33MD;EAqBA;IAvBI,0BAAA;GhEi4MD;CACF;AgE/3MD;EACE,yBAAA;ChEi4MD;AgE53MD;EAcA;IAhBI,2BAAA;GhEk4MD;CACF;AgEh4MD;EACE,yBAAA;ChEk4MD;AgE73MD;EAOA;IATI,iCAAA;GhEm4MD;CACF;AgE53MD;EACA;ICrLE,yBAAA;GjEojNC;CACF","file":"bootstrap.css","sourcesContent":["/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: 1px dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important;\n box-shadow: none !important;\n text-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('../fonts/glyphicons-halflings-regular.eot');\n src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: normal;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n background-color: #fcf8e3;\n padding: .2em;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted #777777;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: '\\2014 \\00A0';\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n text-align: right;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: '';\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: '\\00A0 \\2014';\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n word-break: break-all;\n word-wrap: break-word;\n color: #333333;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.row {\n margin-left: -15px;\n margin-right: -15px;\n}\n.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\ntable col[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-column;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-cell;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n min-width: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: bold;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n border: 0;\n background-color: transparent;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.form-control-static {\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n min-height: 34px;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-left: 0;\n padding-right: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n border-color: #3c763d;\n background-color: #dff0d8;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n border-color: #8a6d3b;\n background-color: #fcf8e3;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n border-color: #a94442;\n background-color: #f2dede;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n margin-top: 0;\n margin-bottom: 0;\n padding-top: 7px;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-left: -15px;\n margin-right: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n text-align: right;\n margin-bottom: 0;\n padding-top: 7px;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n background-image: none;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n background-image: none;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n background-image: none;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n background-image: none;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n background-image: none;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n background-image: none;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n color: #337ab7;\n font-weight: normal;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n list-style: none;\n font-size: 14px;\n text-align: left;\n background-color: #fff;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n background-clip: padding-box;\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n text-decoration: none;\n color: #262626;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n background-color: #337ab7;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n cursor: not-allowed;\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n left: auto;\n right: 0;\n}\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n content: \"\";\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n left: auto;\n right: 0;\n }\n .navbar-right .dropdown-menu-left {\n left: 0;\n right: auto;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: normal;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n margin-bottom: 0;\n padding-left: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n background-color: transparent;\n cursor: not-allowed;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n cursor: default;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n overflow-x: visible;\n padding-right: 15px;\n padding-left: 15px;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-left: 0;\n padding-right: 0;\n }\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.navbar-brand {\n float: left;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n height: 50px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: 15px;\n padding: 9px 10px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n margin-left: -15px;\n margin-right: -15px;\n padding: 10px 15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-left: 15px;\n margin-right: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n background-color: #e7e7e7;\n color: #555;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n background-color: #080808;\n color: #fff;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n content: \"/\\00a0\";\n padding: 0 5px;\n color: #ccc;\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n line-height: 1.42857143;\n text-decoration: none;\n color: #337ab7;\n background-color: #fff;\n border: 1px solid #ddd;\n margin-left: -1px;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-bottom-left-radius: 4px;\n border-top-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-bottom-right-radius: 4px;\n border-top-right-radius: 4px;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n cursor: default;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n background-color: #fff;\n border-color: #ddd;\n cursor: not-allowed;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-bottom-left-radius: 6px;\n border-top-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-bottom-right-radius: 6px;\n border-top-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-bottom-left-radius: 3px;\n border-top-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-bottom-right-radius: 3px;\n border-top-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n list-style: none;\n text-align: center;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n background-color: #fff;\n cursor: not-allowed;\n}\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n color: #fff;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n border-radius: 6px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-left: 60px;\n padding-right: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-left: auto;\n margin-right: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n background-color: #dff0d8;\n border-color: #d6e9c6;\n color: #3c763d;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n background-color: #d9edf7;\n border-color: #bce8f1;\n color: #31708f;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n background-color: #fcf8e3;\n border-color: #faebcc;\n color: #8a6d3b;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n background-color: #f2dede;\n border-color: #ebccd1;\n color: #a94442;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n overflow: hidden;\n height: 20px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n margin-bottom: 20px;\n padding-left: 0;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n text-decoration: none;\n color: #555;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n background-color: #eeeeee;\n color: #777777;\n cursor: not-allowed;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-left: 15px;\n padding-right: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n border: 0;\n margin-bottom: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n height: 100%;\n width: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: 0.2;\n filter: alpha(opacity=20);\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n display: none;\n overflow: hidden;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n background-clip: padding-box;\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.modal-backdrop.in {\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-left: 5px;\n margin-bottom: 0;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 12px;\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.tooltip.in {\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.tooltip.top {\n margin-top: -3px;\n padding: 5px 0;\n}\n.tooltip.right {\n margin-left: 3px;\n padding: 0 5px;\n}\n.tooltip.bottom {\n margin-top: 3px;\n padding: 5px 0;\n}\n.tooltip.left {\n margin-left: -3px;\n padding: 0 5px;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n bottom: 0;\n right: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover-title {\n margin: 0;\n padding: 8px 14px;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow:after {\n border-width: 10px;\n content: \"\";\n}\n.popover.top > .arrow {\n left: 50%;\n margin-left: -11px;\n border-bottom-width: 0;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n bottom: -11px;\n}\n.popover.top > .arrow:after {\n content: \" \";\n bottom: 1px;\n margin-left: -10px;\n border-bottom-width: 0;\n border-top-color: #fff;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-left-width: 0;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n.popover.right > .arrow:after {\n content: \" \";\n left: 1px;\n bottom: -10px;\n border-left-width: 0;\n border-right-color: #fff;\n}\n.popover.bottom > .arrow {\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n top: -11px;\n}\n.popover.bottom > .arrow:after {\n content: \" \";\n top: 1px;\n margin-left: -10px;\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n content: \" \";\n right: 1px;\n border-right-width: 0;\n border-left-color: #fff;\n bottom: -10px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n}\n.carousel-inner > .item {\n display: none;\n position: relative;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 15%;\n opacity: 0.5;\n filter: alpha(opacity=50);\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n}\n.carousel-control.right {\n left: auto;\n right: 0;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n}\n.carousel-control:hover,\n.carousel-control:focus {\n outline: 0;\n color: #fff;\n text-decoration: none;\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n margin-top: -10px;\n z-index: 5;\n display: inline-block;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n line-height: 1;\n font-family: serif;\n}\n.carousel-control .icon-prev:before {\n content: '\\2039';\n}\n.carousel-control .icon-next:before {\n content: '\\203a';\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid #fff;\n border-radius: 10px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-indicators .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n content: \" \";\n display: table;\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n//\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important; // Black prints faster: h5bp.com/s\n box-shadow: none !important;\n text-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n\n // Bootstrap specific changes end\n}\n","//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star\n\n// Import the fonts\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('@{icon-font-path}@{icon-font-name}.eot');\n src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'),\n url('@{icon-font-path}@{icon-font-name}.woff2') format('woff2'),\n url('@{icon-font-path}@{icon-font-name}.woff') format('woff'),\n url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'),\n url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg');\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\002a\"; } }\n.glyphicon-plus { &:before { content: \"\\002b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// http://getbootstrap.com/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: http://a11yproject.com/posts/how-to-hide-content\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0,0,0,0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// WebKit-style focus\n\n.tab-focus() {\n // WebKit-specific. Other browsers will keep their default outline style.\n // (Initially tried to also force default via `outline: initial`,\n // but that seems to erroneously remove the outline in Firefox altogether.)\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n","//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: normal;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n background-color: @state-warning-bg;\n padding: .2em;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @dl-horizontal-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\nabbr[title],\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted @abbr-border-color;\n}\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: '\\2014 \\00A0'; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n text-align: right;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: ''; }\n &:after {\n content: '\\00A0 \\2014'; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n","// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n","// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n margin-right: auto;\n margin-left: auto;\n padding-left: floor((@gutter / 2));\n padding-right: ceil((@gutter / 2));\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-left: ceil((@gutter / -2));\n margin-right: floor((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-left: ceil((@grid-gutter-width / 2));\n padding-right: floor((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n","//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n}\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table cell sizing\n//\n// Reset default table behavior\n\ntable col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-column;\n}\ntable {\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-cell;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * 0.75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n","//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn't specific enough)\ninput[type=\"search\"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n}\n\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Unstyle the caret on ``\n// element gets special love because it's special, and that's a fact!\n.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n height: @input-height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n\n select& {\n height: @input-height;\n line-height: @input-height;\n }\n\n textarea&,\n select[multiple]& {\n height: auto;\n }\n}\n","//\n// Buttons\n// --------------------------------------------------\n\n\n// Base styles\n// --------------------------------------------------\n\n.btn {\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: @btn-font-weight;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);\n .user-select(none);\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n .tab-focus();\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: @btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n .opacity(.65);\n .box-shadow(none);\n }\n\n a& {\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n }\n}\n\n\n// Alternate buttons\n// --------------------------------------------------\n\n.btn-default {\n .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);\n}\n.btn-primary {\n .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);\n}\n// Success appears as green\n.btn-success {\n .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);\n}\n// Info appears as blue-green\n.btn-info {\n .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);\n}\n// Warning appears as orange\n.btn-warning {\n .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);\n}\n// Danger and error appear as red\n.btn-danger {\n .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);\n}\n\n\n// Link buttons\n// -------------------------\n\n// Make a button look and behave like a link\n.btn-link {\n color: @link-color;\n font-weight: normal;\n border-radius: 0;\n\n &,\n &:active,\n &.active,\n &[disabled],\n fieldset[disabled] & {\n background-color: transparent;\n .box-shadow(none);\n }\n &,\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n background-color: transparent;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @btn-link-disabled-color;\n text-decoration: none;\n }\n }\n}\n\n\n// Button Sizes\n// --------------------------------------------------\n\n.btn-lg {\n // line-height: ensure even-numbered height of button next to large input\n .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);\n}\n.btn-sm {\n // line-height: ensure proper height of button next to small input\n .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n.btn-xs {\n .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n\n\n// Block button\n// --------------------------------------------------\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n// Vertically space out multiple block buttons\n.btn-block + .btn-block {\n margin-top: 5px;\n}\n\n// Specificity overrides\ninput[type=\"submit\"],\ninput[type=\"reset\"],\ninput[type=\"button\"] {\n &.btn-block {\n width: 100%;\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 25%);\n }\n &:hover {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 17%);\n border-color: darken(@border, 25%);\n }\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: @background;\n border-color: @border;\n }\n }\n\n .badge {\n color: @background;\n background-color: @color;\n }\n}\n\n// Button sizes\n.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n}\n","// Opacity\n\n.opacity(@opacity) {\n opacity: @opacity;\n // IE8 filter\n @opacity-ie: (@opacity * 100);\n filter: ~\"alpha(opacity=@{opacity-ie})\";\n}\n","//\n// Component animations\n// --------------------------------------------------\n\n// Heads up!\n//\n// We don't use the `.opacity()` mixin here since it causes a bug with text\n// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.\n\n.fade {\n opacity: 0;\n .transition(opacity .15s linear);\n &.in {\n opacity: 1;\n }\n}\n\n.collapse {\n display: none;\n\n &.in { display: block; }\n tr&.in { display: table-row; }\n tbody&.in { display: table-row-group; }\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n .transition-property(~\"height, visibility\");\n .transition-duration(.35s);\n .transition-timing-function(ease);\n}\n","//\n// Dropdown menus\n// --------------------------------------------------\n\n\n// Dropdown arrow/caret\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: @caret-width-base dashed;\n border-top: @caret-width-base solid ~\"\\9\"; // IE8\n border-right: @caret-width-base solid transparent;\n border-left: @caret-width-base solid transparent;\n}\n\n// The dropdown wrapper (div)\n.dropup,\n.dropdown {\n position: relative;\n}\n\n// Prevent the focus on the dropdown toggle when closing dropdowns\n.dropdown-toggle:focus {\n outline: 0;\n}\n\n// The dropdown menu (ul)\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on \"open\" of the menu\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0; // override default ul\n list-style: none;\n font-size: @font-size-base;\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\n background-color: @dropdown-bg;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0,0,0,.175));\n background-clip: padding-box;\n\n // Aligns the dropdown menu to right\n //\n // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]`\n &.pull-right {\n right: 0;\n left: auto;\n }\n\n // Dividers (basically an hr) within the dropdown\n .divider {\n .nav-divider(@dropdown-divider-bg);\n }\n\n // Links within the dropdown menu\n > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: @line-height-base;\n color: @dropdown-link-color;\n white-space: nowrap; // prevent links from randomly breaking onto new lines\n }\n}\n\n// Hover/Focus state\n.dropdown-menu > li > a {\n &:hover,\n &:focus {\n text-decoration: none;\n color: @dropdown-link-hover-color;\n background-color: @dropdown-link-hover-bg;\n }\n}\n\n// Active state\n.dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-active-color;\n text-decoration: none;\n outline: 0;\n background-color: @dropdown-link-active-bg;\n }\n}\n\n// Disabled state\n//\n// Gray out text and ensure the hover/focus state remains gray\n\n.dropdown-menu > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-disabled-color;\n }\n\n // Nuke hover/focus effects\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none; // Remove CSS gradient\n .reset-filter();\n cursor: @cursor-disabled;\n }\n}\n\n// Open state for the dropdown\n.open {\n // Show the menu\n > .dropdown-menu {\n display: block;\n }\n\n // Remove the outline when :focus is triggered\n > a {\n outline: 0;\n }\n}\n\n// Menu positioning\n//\n// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown\n// menu with the parent.\n.dropdown-menu-right {\n left: auto; // Reset the default from `.dropdown-menu`\n right: 0;\n}\n// With v3, we enabled auto-flipping if you have a dropdown within a right\n// aligned nav component. To enable the undoing of that, we provide an override\n// to restore the default dropdown menu alignment.\n//\n// This is only for left-aligning a dropdown menu within a `.navbar-right` or\n// `.pull-right` nav component.\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n\n// Dropdown section headers\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: @font-size-small;\n line-height: @line-height-base;\n color: @dropdown-header-color;\n white-space: nowrap; // as with > li > a\n}\n\n// Backdrop to catch body clicks on mobile, etc.\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: (@zindex-dropdown - 10);\n}\n\n// Right aligned dropdowns\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n//\n// Just add .dropup after the standard .dropdown class and you're set, bro.\n// TODO: abstract this so that the navbar fixed styles are not placed here?\n\n.dropup,\n.navbar-fixed-bottom .dropdown {\n // Reverse the caret\n .caret {\n border-top: 0;\n border-bottom: @caret-width-base dashed;\n border-bottom: @caret-width-base solid ~\"\\9\"; // IE8\n content: \"\";\n }\n // Different positioning for bottom up menu\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n }\n}\n\n\n// Component alignment\n//\n// Reiterate per navbar.less and the modified component alignment there.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-right {\n .dropdown-menu {\n .dropdown-menu-right();\n }\n // Necessary for overrides of the default right aligned menu.\n // Will remove come v4 in all likelihood.\n .dropdown-menu-left {\n .dropdown-menu-left();\n }\n }\n}\n","// Horizontal dividers\n//\n// Dividers (basically an hr) within dropdowns and nav lists\n\n.nav-divider(@color: #e5e5e5) {\n height: 1px;\n margin: ((@line-height-computed / 2) - 1) 0;\n overflow: hidden;\n background-color: @color;\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n","//\n// Button groups\n// --------------------------------------------------\n\n// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle; // match .btn alignment given font-size hack above\n > .btn {\n position: relative;\n float: left;\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active,\n &.active {\n z-index: 2;\n }\n }\n}\n\n// Prevent double borders when buttons are next to each other\n.btn-group {\n .btn + .btn,\n .btn + .btn-group,\n .btn-group + .btn,\n .btn-group + .btn-group {\n margin-left: -1px;\n }\n}\n\n// Optional: Group multiple button groups together for a toolbar\n.btn-toolbar {\n margin-left: -5px; // Offset the first child's margin\n &:extend(.clearfix all);\n\n .btn,\n .btn-group,\n .input-group {\n float: left;\n }\n > .btn,\n > .btn-group,\n > .input-group {\n margin-left: 5px;\n }\n}\n\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n\n// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match\n.btn-group > .btn:first-child {\n margin-left: 0;\n &:not(:last-child):not(.dropdown-toggle) {\n .border-right-radius(0);\n }\n}\n// Need .dropdown-toggle since :last-child doesn't apply, given that a .dropdown-menu is used immediately after it\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n .border-left-radius(0);\n}\n\n// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-right-radius(0);\n }\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-left-radius(0);\n}\n\n// On active and open, don't show outline\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n\n\n// Sizing\n//\n// Remix the default button sizing classes into new ones for easier manipulation.\n\n.btn-group-xs > .btn { &:extend(.btn-xs); }\n.btn-group-sm > .btn { &:extend(.btn-sm); }\n.btn-group-lg > .btn { &:extend(.btn-lg); }\n\n\n// Split button dropdowns\n// ----------------------\n\n// Give the line between buttons some depth\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n\n// The clickable button for toggling the menu\n// Remove the gradient and set the same inset shadow as the :active state\n.btn-group.open .dropdown-toggle {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n\n // Show no shadow for `.btn-link` since it has no other button styles.\n &.btn-link {\n .box-shadow(none);\n }\n}\n\n\n// Reposition the caret\n.btn .caret {\n margin-left: 0;\n}\n// Carets in other button sizes\n.btn-lg .caret {\n border-width: @caret-width-large @caret-width-large 0;\n border-bottom-width: 0;\n}\n// Upside down carets for .dropup\n.dropup .btn-lg .caret {\n border-width: 0 @caret-width-large @caret-width-large;\n}\n\n\n// Vertical button groups\n// ----------------------\n\n.btn-group-vertical {\n > .btn,\n > .btn-group,\n > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n }\n\n // Clear floats so dropdown menus can be properly placed\n > .btn-group {\n &:extend(.clearfix all);\n > .btn {\n float: none;\n }\n }\n\n > .btn + .btn,\n > .btn + .btn-group,\n > .btn-group + .btn,\n > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n }\n}\n\n.btn-group-vertical > .btn {\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n &:first-child:not(:last-child) {\n .border-top-radius(@btn-border-radius-base);\n .border-bottom-radius(0);\n }\n &:last-child:not(:first-child) {\n .border-top-radius(0);\n .border-bottom-radius(@btn-border-radius-base);\n }\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-bottom-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-top-radius(0);\n}\n\n\n// Justified button groups\n// ----------------------\n\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n > .btn,\n > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n }\n > .btn-group .btn {\n width: 100%;\n }\n\n > .btn-group .dropdown-menu {\n left: auto;\n }\n}\n\n\n// Checkbox and radio options\n//\n// In order to support the browser's form validation feedback, powered by the\n// `required` attribute, we have to \"hide\" the inputs via `clip`. We cannot use\n// `display: none;` or `visibility: hidden;` as that also hides the popover.\n// Simply visually hiding the inputs via `opacity` would leave them clickable in\n// certain cases which is prevented by using `clip` and `pointer-events`.\n// This way, we ensure a DOM element is visible to position the popover from.\n//\n// See https://github.com/twbs/bootstrap/pull/12794 and\n// https://github.com/twbs/bootstrap/pull/14559 for more information.\n\n[data-toggle=\"buttons\"] {\n > .btn,\n > .btn-group > .btn {\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0,0,0,0);\n pointer-events: none;\n }\n }\n}\n","// Single side border-radius\n\n.border-top-radius(@radius) {\n border-top-right-radius: @radius;\n border-top-left-radius: @radius;\n}\n.border-right-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-top-right-radius: @radius;\n}\n.border-bottom-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n.border-left-radius(@radius) {\n border-bottom-left-radius: @radius;\n border-top-left-radius: @radius;\n}\n","//\n// Input groups\n// --------------------------------------------------\n\n// Base styles\n// -------------------------\n.input-group {\n position: relative; // For dropdowns\n display: table;\n border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table\n\n // Undo padding and float of grid classes\n &[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n }\n\n .form-control {\n // Ensure that the input is always above the *appended* addon button for\n // proper border colors.\n position: relative;\n z-index: 2;\n\n // IE9 fubars the placeholder attribute in text inputs and the arrows on\n // select elements in input groups. To fix it, we float the input. Details:\n // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855\n float: left;\n\n width: 100%;\n margin-bottom: 0;\n\n &:focus {\n z-index: 3;\n }\n }\n}\n\n// Sizing options\n//\n// Remix the default form control sizing classes into new ones for easier\n// manipulation.\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n .input-lg();\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n .input-sm();\n}\n\n\n// Display as table-cell\n// -------------------------\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n}\n// Addon and addon wrapper for buttons\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle; // Match the inputs\n}\n\n// Text input groups\n// -------------------------\n.input-group-addon {\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n font-weight: normal;\n line-height: 1;\n color: @input-color;\n text-align: center;\n background-color: @input-group-addon-bg;\n border: 1px solid @input-group-addon-border-color;\n border-radius: @input-border-radius;\n\n // Sizing\n &.input-sm {\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n border-radius: @input-border-radius-small;\n }\n &.input-lg {\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n border-radius: @input-border-radius-large;\n }\n\n // Nuke default margins from checkboxes and radios to vertically center within.\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin-top: 0;\n }\n}\n\n// Reset rounded corners\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n .border-right-radius(0);\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n .border-left-radius(0);\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n\n// Button input groups\n// -------------------------\n.input-group-btn {\n position: relative;\n // Jankily prevent input button groups from wrapping with `white-space` and\n // `font-size` in combination with `inline-block` on buttons.\n font-size: 0;\n white-space: nowrap;\n\n // Negative margin for spacing, position for bringing hovered/focused/actived\n // element above the siblings.\n > .btn {\n position: relative;\n + .btn {\n margin-left: -1px;\n }\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n }\n\n // Negative margin to only have a 1px border between the two\n &:first-child {\n > .btn,\n > .btn-group {\n margin-right: -1px;\n }\n }\n &:last-child {\n > .btn,\n > .btn-group {\n z-index: 2;\n margin-left: -1px;\n }\n }\n}\n","//\n// Navs\n// --------------------------------------------------\n\n\n// Base class\n// --------------------------------------------------\n\n.nav {\n margin-bottom: 0;\n padding-left: 0; // Override default ul/ol\n list-style: none;\n &:extend(.clearfix all);\n\n > li {\n position: relative;\n display: block;\n\n > a {\n position: relative;\n display: block;\n padding: @nav-link-padding;\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: @nav-link-hover-bg;\n }\n }\n\n // Disabled state sets text to gray and nukes hover/tab effects\n &.disabled > a {\n color: @nav-disabled-link-color;\n\n &:hover,\n &:focus {\n color: @nav-disabled-link-hover-color;\n text-decoration: none;\n background-color: transparent;\n cursor: @cursor-disabled;\n }\n }\n }\n\n // Open dropdowns\n .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @nav-link-hover-bg;\n border-color: @link-color;\n }\n }\n\n // Nav dividers (deprecated with v3.0.1)\n //\n // This should have been removed in v3 with the dropping of `.nav-list`, but\n // we missed it. We don't currently support this anywhere, but in the interest\n // of maintaining backward compatibility in case you use it, it's deprecated.\n .nav-divider {\n .nav-divider();\n }\n\n // Prevent IE8 from misplacing imgs\n //\n // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989\n > li > a > img {\n max-width: none;\n }\n}\n\n\n// Tabs\n// -------------------------\n\n// Give the tabs something to sit on\n.nav-tabs {\n border-bottom: 1px solid @nav-tabs-border-color;\n > li {\n float: left;\n // Make the list-items overlay the bottom border\n margin-bottom: -1px;\n\n // Actual tabs (as links)\n > a {\n margin-right: 2px;\n line-height: @line-height-base;\n border: 1px solid transparent;\n border-radius: @border-radius-base @border-radius-base 0 0;\n &:hover {\n border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color;\n }\n }\n\n // Active state, and its :hover to override normal :hover\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-tabs-active-link-hover-color;\n background-color: @nav-tabs-active-link-hover-bg;\n border: 1px solid @nav-tabs-active-link-hover-border-color;\n border-bottom-color: transparent;\n cursor: default;\n }\n }\n }\n // pulling this in mainly for less shorthand\n &.nav-justified {\n .nav-justified();\n .nav-tabs-justified();\n }\n}\n\n\n// Pills\n// -------------------------\n.nav-pills {\n > li {\n float: left;\n\n // Links rendered as pills\n > a {\n border-radius: @nav-pills-border-radius;\n }\n + li {\n margin-left: 2px;\n }\n\n // Active state\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-pills-active-link-hover-color;\n background-color: @nav-pills-active-link-hover-bg;\n }\n }\n }\n}\n\n\n// Stacked pills\n.nav-stacked {\n > li {\n float: none;\n + li {\n margin-top: 2px;\n margin-left: 0; // no need for this gap between nav items\n }\n }\n}\n\n\n// Nav variations\n// --------------------------------------------------\n\n// Justified nav links\n// -------------------------\n\n.nav-justified {\n width: 100%;\n\n > li {\n float: none;\n > a {\n text-align: center;\n margin-bottom: 5px;\n }\n }\n\n > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n }\n\n @media (min-width: @screen-sm-min) {\n > li {\n display: table-cell;\n width: 1%;\n > a {\n margin-bottom: 0;\n }\n }\n }\n}\n\n// Move borders to anchors instead of bottom of list\n//\n// Mixin for adding on top the shared `.nav-justified` styles for our tabs\n.nav-tabs-justified {\n border-bottom: 0;\n\n > li > a {\n // Override margin from .nav-tabs\n margin-right: 0;\n border-radius: @border-radius-base;\n }\n\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border: 1px solid @nav-tabs-justified-link-border-color;\n }\n\n @media (min-width: @screen-sm-min) {\n > li > a {\n border-bottom: 1px solid @nav-tabs-justified-link-border-color;\n border-radius: @border-radius-base @border-radius-base 0 0;\n }\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border-bottom-color: @nav-tabs-justified-active-link-border-color;\n }\n }\n}\n\n\n// Tabbable tabs\n// -------------------------\n\n// Hide tabbable panes to start, show them when `.active`\n.tab-content {\n > .tab-pane {\n display: none;\n }\n > .active {\n display: block;\n }\n}\n\n\n// Dropdowns\n// -------------------------\n\n// Specific dropdowns\n.nav-tabs .dropdown-menu {\n // make dropdown border overlap tab border\n margin-top: -1px;\n // Remove the top rounded corners here since there is a hard edge above the menu\n .border-top-radius(0);\n}\n","//\n// Navbars\n// --------------------------------------------------\n\n\n// Wrapper and base class\n//\n// Provide a static navbar from which we expand to create full-width, fixed, and\n// other navbar variations.\n\n.navbar {\n position: relative;\n min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)\n margin-bottom: @navbar-margin-bottom;\n border: 1px solid transparent;\n\n // Prevent floats from breaking the navbar\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: @navbar-border-radius;\n }\n}\n\n\n// Navbar heading\n//\n// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy\n// styling of responsive aspects.\n\n.navbar-header {\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n }\n}\n\n\n// Navbar collapse (body)\n//\n// Group your navbar content into this for easy collapsing and expanding across\n// various device sizes. By default, this content is collapsed when <768px, but\n// will expand past that for a horizontal display.\n//\n// To start (on mobile devices) the navbar links, forms, and buttons are stacked\n// vertically and include a `max-height` to overflow in case you have too much\n// content for the user's viewport.\n\n.navbar-collapse {\n overflow-x: visible;\n padding-right: @navbar-padding-horizontal;\n padding-left: @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255,255,255,.1);\n &:extend(.clearfix all);\n -webkit-overflow-scrolling: touch;\n\n &.in {\n overflow-y: auto;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border-top: 0;\n box-shadow: none;\n\n &.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0; // Override default setting\n overflow: visible !important;\n }\n\n &.in {\n overflow-y: visible;\n }\n\n // Undo the collapse side padding for navbars with containers to ensure\n // alignment of right-aligned contents.\n .navbar-fixed-top &,\n .navbar-static-top &,\n .navbar-fixed-bottom & {\n padding-left: 0;\n padding-right: 0;\n }\n }\n}\n\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n .navbar-collapse {\n max-height: @navbar-collapse-max-height;\n\n @media (max-device-width: @screen-xs-min) and (orientation: landscape) {\n max-height: 200px;\n }\n }\n}\n\n\n// Both navbar header and collapse\n//\n// When a container is present, change the behavior of the header and collapse.\n\n.container,\n.container-fluid {\n > .navbar-header,\n > .navbar-collapse {\n margin-right: -@navbar-padding-horizontal;\n margin-left: -@navbar-padding-horizontal;\n\n @media (min-width: @grid-float-breakpoint) {\n margin-right: 0;\n margin-left: 0;\n }\n }\n}\n\n\n//\n// Navbar alignment options\n//\n// Display the navbar across the entirety of the page or fixed it to the top or\n// bottom of the page.\n\n// Static top (unfixed, but 100% wide) navbar\n.navbar-static-top {\n z-index: @zindex-navbar;\n border-width: 0 0 1px;\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n\n// Fix the top/bottom navbars when screen real estate supports it\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: @zindex-navbar-fixed;\n\n // Undo the rounded corners\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0; // override .navbar defaults\n border-width: 1px 0 0;\n}\n\n\n// Brand/project name\n\n.navbar-brand {\n float: left;\n padding: @navbar-padding-vertical @navbar-padding-horizontal;\n font-size: @font-size-large;\n line-height: @line-height-computed;\n height: @navbar-height;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n\n > img {\n display: block;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n .navbar > .container &,\n .navbar > .container-fluid & {\n margin-left: -@navbar-padding-horizontal;\n }\n }\n}\n\n\n// Navbar toggle\n//\n// Custom button for toggling the `.navbar-collapse`, powered by the collapse\n// JavaScript plugin.\n\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: @navbar-padding-horizontal;\n padding: 9px 10px;\n .navbar-vertical-align(34px);\n background-color: transparent;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n border-radius: @border-radius-base;\n\n // We remove the `outline` here, but later compensate by attaching `:hover`\n // styles to `:focus`.\n &:focus {\n outline: 0;\n }\n\n // Bars\n .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n }\n .icon-bar + .icon-bar {\n margin-top: 4px;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n display: none;\n }\n}\n\n\n// Navbar nav links\n//\n// Builds on top of the `.nav` components with its own modifier class to make\n// the nav the full height of the horizontal nav (above 768px).\n\n.navbar-nav {\n margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal;\n\n > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: @line-height-computed;\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n > li > a,\n .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n > li > a {\n line-height: @line-height-computed;\n &:hover,\n &:focus {\n background-image: none;\n }\n }\n }\n }\n\n // Uncollapse the nav\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin: 0;\n\n > li {\n float: left;\n > a {\n padding-top: @navbar-padding-vertical;\n padding-bottom: @navbar-padding-vertical;\n }\n }\n }\n}\n\n\n// Navbar form\n//\n// Extension of the `.form-inline` with some extra flavor for optimum display in\n// our navbars.\n\n.navbar-form {\n margin-left: -@navbar-padding-horizontal;\n margin-right: -@navbar-padding-horizontal;\n padding: 10px @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n\n // Mixin behavior for optimum display\n .form-inline();\n\n .form-group {\n @media (max-width: @grid-float-breakpoint-max) {\n margin-bottom: 5px;\n\n &:last-child {\n margin-bottom: 0;\n }\n }\n }\n\n // Vertically center in expanded, horizontal navbar\n .navbar-vertical-align(@input-height-base);\n\n // Undo 100% width for pull classes\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n .box-shadow(none);\n }\n}\n\n\n// Dropdown menus\n\n// Menu position and menu carets\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n .border-top-radius(0);\n}\n// Menu position and menu caret support for dropups via extra dropup class\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n .border-top-radius(@navbar-border-radius);\n .border-bottom-radius(0);\n}\n\n\n// Buttons in navbars\n//\n// Vertically center a button within a navbar (when *not* in a form).\n\n.navbar-btn {\n .navbar-vertical-align(@input-height-base);\n\n &.btn-sm {\n .navbar-vertical-align(@input-height-small);\n }\n &.btn-xs {\n .navbar-vertical-align(22);\n }\n}\n\n\n// Text in navbars\n//\n// Add a class to make any element properly align itself vertically within the navbars.\n\n.navbar-text {\n .navbar-vertical-align(@line-height-computed);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin-left: @navbar-padding-horizontal;\n margin-right: @navbar-padding-horizontal;\n }\n}\n\n\n// Component alignment\n//\n// Repurpose the pull utilities as their own navbar utilities to avoid specificity\n// issues with parents and chaining. Only do this when the navbar is uncollapsed\n// though so that navbar contents properly stack and align in mobile.\n//\n// Declared after the navbar components to ensure more specificity on the margins.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-left { .pull-left(); }\n .navbar-right {\n .pull-right();\n margin-right: -@navbar-padding-horizontal;\n\n ~ .navbar-right {\n margin-right: 0;\n }\n }\n}\n\n\n// Alternate navbars\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n background-color: @navbar-default-bg;\n border-color: @navbar-default-border;\n\n .navbar-brand {\n color: @navbar-default-brand-color;\n &:hover,\n &:focus {\n color: @navbar-default-brand-hover-color;\n background-color: @navbar-default-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-default-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-default-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n\n .navbar-toggle {\n border-color: @navbar-default-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-default-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-default-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: @navbar-default-border;\n }\n\n // Dropdown menu items\n .navbar-nav {\n // Remove background color from open dropdown\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-default-link-active-bg;\n color: @navbar-default-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n > li > a {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n }\n }\n\n\n // Links in navbars\n //\n // Add a class to ensure links outside the navbar nav are colored correctly.\n\n .navbar-link {\n color: @navbar-default-link-color;\n &:hover {\n color: @navbar-default-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n }\n }\n }\n}\n\n// Inverse navbar\n\n.navbar-inverse {\n background-color: @navbar-inverse-bg;\n border-color: @navbar-inverse-border;\n\n .navbar-brand {\n color: @navbar-inverse-brand-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-brand-hover-color;\n background-color: @navbar-inverse-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-inverse-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-inverse-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n\n // Darken the responsive nav toggle\n .navbar-toggle {\n border-color: @navbar-inverse-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-inverse-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-inverse-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: darken(@navbar-inverse-bg, 7%);\n }\n\n // Dropdowns\n .navbar-nav {\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-inverse-link-active-bg;\n color: @navbar-inverse-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display\n .open .dropdown-menu {\n > .dropdown-header {\n border-color: @navbar-inverse-border;\n }\n .divider {\n background-color: @navbar-inverse-border;\n }\n > li > a {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n }\n }\n\n .navbar-link {\n color: @navbar-inverse-link-color;\n &:hover {\n color: @navbar-inverse-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n }\n }\n }\n}\n","// Navbar vertical align\n//\n// Vertically center elements in the navbar.\n// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.\n\n.navbar-vertical-align(@element-height) {\n margin-top: ((@navbar-height - @element-height) / 2);\n margin-bottom: ((@navbar-height - @element-height) / 2);\n}\n","//\n// Utility classes\n// --------------------------------------------------\n\n\n// Floats\n// -------------------------\n\n.clearfix {\n .clearfix();\n}\n.center-block {\n .center-block();\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n\n\n// Toggling content\n// -------------------------\n\n// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n .text-hide();\n}\n\n\n// Hide from screenreaders and browsers\n//\n// Credit: HTML5 Boilerplate\n\n.hidden {\n display: none !important;\n}\n\n\n// For Affix plugin\n// -------------------------\n\n.affix {\n position: fixed;\n}\n","//\n// Breadcrumbs\n// --------------------------------------------------\n\n\n.breadcrumb {\n padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;\n margin-bottom: @line-height-computed;\n list-style: none;\n background-color: @breadcrumb-bg;\n border-radius: @border-radius-base;\n\n > li {\n display: inline-block;\n\n + li:before {\n content: \"@{breadcrumb-separator}\\00a0\"; // Unicode space added since inline-block means non-collapsing white-space\n padding: 0 5px;\n color: @breadcrumb-color;\n }\n }\n\n > .active {\n color: @breadcrumb-active-color;\n }\n}\n","//\n// Pagination (multiple pages)\n// --------------------------------------------------\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: @line-height-computed 0;\n border-radius: @border-radius-base;\n\n > li {\n display: inline; // Remove list-style and block-level defaults\n > a,\n > span {\n position: relative;\n float: left; // Collapse white-space\n padding: @padding-base-vertical @padding-base-horizontal;\n line-height: @line-height-base;\n text-decoration: none;\n color: @pagination-color;\n background-color: @pagination-bg;\n border: 1px solid @pagination-border;\n margin-left: -1px;\n }\n &:first-child {\n > a,\n > span {\n margin-left: 0;\n .border-left-radius(@border-radius-base);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius-base);\n }\n }\n }\n\n > li > a,\n > li > span {\n &:hover,\n &:focus {\n z-index: 2;\n color: @pagination-hover-color;\n background-color: @pagination-hover-bg;\n border-color: @pagination-hover-border;\n }\n }\n\n > .active > a,\n > .active > span {\n &,\n &:hover,\n &:focus {\n z-index: 3;\n color: @pagination-active-color;\n background-color: @pagination-active-bg;\n border-color: @pagination-active-border;\n cursor: default;\n }\n }\n\n > .disabled {\n > span,\n > span:hover,\n > span:focus,\n > a,\n > a:hover,\n > a:focus {\n color: @pagination-disabled-color;\n background-color: @pagination-disabled-bg;\n border-color: @pagination-disabled-border;\n cursor: @cursor-disabled;\n }\n }\n}\n\n// Sizing\n// --------------------------------------------------\n\n// Large\n.pagination-lg {\n .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n\n// Small\n.pagination-sm {\n .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n","// Pagination\n\n.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n > li {\n > a,\n > span {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n }\n &:first-child {\n > a,\n > span {\n .border-left-radius(@border-radius);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius);\n }\n }\n }\n}\n","//\n// Pager pagination\n// --------------------------------------------------\n\n\n.pager {\n padding-left: 0;\n margin: @line-height-computed 0;\n list-style: none;\n text-align: center;\n &:extend(.clearfix all);\n li {\n display: inline;\n > a,\n > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: @pager-bg;\n border: 1px solid @pager-border;\n border-radius: @pager-border-radius;\n }\n\n > a:hover,\n > a:focus {\n text-decoration: none;\n background-color: @pager-hover-bg;\n }\n }\n\n .next {\n > a,\n > span {\n float: right;\n }\n }\n\n .previous {\n > a,\n > span {\n float: left;\n }\n }\n\n .disabled {\n > a,\n > a:hover,\n > a:focus,\n > span {\n color: @pager-disabled-color;\n background-color: @pager-bg;\n cursor: @cursor-disabled;\n }\n }\n}\n","//\n// Labels\n// --------------------------------------------------\n\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n // Add hover effects, but only for links\n a& {\n &:hover,\n &:focus {\n color: @label-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Empty labels collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for labels in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n}\n\n// Colors\n// Contextual variations (linked labels get darker on :hover)\n\n.label-default {\n .label-variant(@label-default-bg);\n}\n\n.label-primary {\n .label-variant(@label-primary-bg);\n}\n\n.label-success {\n .label-variant(@label-success-bg);\n}\n\n.label-info {\n .label-variant(@label-info-bg);\n}\n\n.label-warning {\n .label-variant(@label-warning-bg);\n}\n\n.label-danger {\n .label-variant(@label-danger-bg);\n}\n","// Labels\n\n.label-variant(@color) {\n background-color: @color;\n\n &[href] {\n &:hover,\n &:focus {\n background-color: darken(@color, 10%);\n }\n }\n}\n","//\n// Badges\n// --------------------------------------------------\n\n\n// Base class\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: @font-size-small;\n font-weight: @badge-font-weight;\n color: @badge-color;\n line-height: @badge-line-height;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: @badge-bg;\n border-radius: @badge-border-radius;\n\n // Empty badges collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for badges in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n\n .btn-xs &,\n .btn-group-xs > .btn & {\n top: 0;\n padding: 1px 5px;\n }\n\n // Hover state, but only for links\n a& {\n &:hover,\n &:focus {\n color: @badge-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Account for badges in navs\n .list-group-item.active > &,\n .nav-pills > .active > a > & {\n color: @badge-active-color;\n background-color: @badge-active-bg;\n }\n\n .list-group-item > & {\n float: right;\n }\n\n .list-group-item > & + & {\n margin-right: 5px;\n }\n\n .nav-pills > li > a > & {\n margin-left: 3px;\n }\n}\n","//\n// Jumbotron\n// --------------------------------------------------\n\n\n.jumbotron {\n padding-top: @jumbotron-padding;\n padding-bottom: @jumbotron-padding;\n margin-bottom: @jumbotron-padding;\n color: @jumbotron-color;\n background-color: @jumbotron-bg;\n\n h1,\n .h1 {\n color: @jumbotron-heading-color;\n }\n\n p {\n margin-bottom: (@jumbotron-padding / 2);\n font-size: @jumbotron-font-size;\n font-weight: 200;\n }\n\n > hr {\n border-top-color: darken(@jumbotron-bg, 10%);\n }\n\n .container &,\n .container-fluid & {\n border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container\n padding-left: (@grid-gutter-width / 2);\n padding-right: (@grid-gutter-width / 2);\n }\n\n .container {\n max-width: 100%;\n }\n\n @media screen and (min-width: @screen-sm-min) {\n padding-top: (@jumbotron-padding * 1.6);\n padding-bottom: (@jumbotron-padding * 1.6);\n\n .container &,\n .container-fluid & {\n padding-left: (@jumbotron-padding * 2);\n padding-right: (@jumbotron-padding * 2);\n }\n\n h1,\n .h1 {\n font-size: @jumbotron-heading-font-size;\n }\n }\n}\n","//\n// Thumbnails\n// --------------------------------------------------\n\n\n// Mixin and adjust the regular image class\n.thumbnail {\n display: block;\n padding: @thumbnail-padding;\n margin-bottom: @line-height-computed;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(border .2s ease-in-out);\n\n > img,\n a > img {\n &:extend(.img-responsive);\n margin-left: auto;\n margin-right: auto;\n }\n\n // Add a hover state for linked versions only\n a&:hover,\n a&:focus,\n a&.active {\n border-color: @link-color;\n }\n\n // Image captions\n .caption {\n padding: @thumbnail-caption-padding;\n color: @thumbnail-caption-color;\n }\n}\n","//\n// Alerts\n// --------------------------------------------------\n\n\n// Base styles\n// -------------------------\n\n.alert {\n padding: @alert-padding;\n margin-bottom: @line-height-computed;\n border: 1px solid transparent;\n border-radius: @alert-border-radius;\n\n // Headings for larger alerts\n h4 {\n margin-top: 0;\n // Specified for the h4 to prevent conflicts of changing @headings-color\n color: inherit;\n }\n\n // Provide class for links that match alerts\n .alert-link {\n font-weight: @alert-link-font-weight;\n }\n\n // Improve alignment and spacing of inner content\n > p,\n > ul {\n margin-bottom: 0;\n }\n\n > p + p {\n margin-top: 5px;\n }\n}\n\n// Dismissible alerts\n//\n// Expand the right padding and account for the close button's positioning.\n\n.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0.\n.alert-dismissible {\n padding-right: (@alert-padding + 20);\n\n // Adjust close link position\n .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n }\n}\n\n// Alternate styles\n//\n// Generate contextual modifier classes for colorizing the alert.\n\n.alert-success {\n .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);\n}\n\n.alert-info {\n .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);\n}\n\n.alert-warning {\n .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);\n}\n\n.alert-danger {\n .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);\n}\n","// Alerts\n\n.alert-variant(@background; @border; @text-color) {\n background-color: @background;\n border-color: @border;\n color: @text-color;\n\n hr {\n border-top-color: darken(@border, 5%);\n }\n .alert-link {\n color: darken(@text-color, 10%);\n }\n}\n","//\n// Progress bars\n// --------------------------------------------------\n\n\n// Bar animations\n// -------------------------\n\n// WebKit\n@-webkit-keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n// Spec and IE10+\n@keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n\n// Bar itself\n// -------------------------\n\n// Outer container\n.progress {\n overflow: hidden;\n height: @line-height-computed;\n margin-bottom: @line-height-computed;\n background-color: @progress-bg;\n border-radius: @progress-border-radius;\n .box-shadow(inset 0 1px 2px rgba(0,0,0,.1));\n}\n\n// Bar of progress\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: @font-size-small;\n line-height: @line-height-computed;\n color: @progress-bar-color;\n text-align: center;\n background-color: @progress-bar-bg;\n .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));\n .transition(width .6s ease);\n}\n\n// Striped bars\n//\n// `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar-striped` class, which you just add to an existing\n// `.progress-bar`.\n.progress-striped .progress-bar,\n.progress-bar-striped {\n #gradient > .striped();\n background-size: 40px 40px;\n}\n\n// Call animation for the active one\n//\n// `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar.active` approach.\n.progress.active .progress-bar,\n.progress-bar.active {\n .animation(progress-bar-stripes 2s linear infinite);\n}\n\n\n// Variations\n// -------------------------\n\n.progress-bar-success {\n .progress-bar-variant(@progress-bar-success-bg);\n}\n\n.progress-bar-info {\n .progress-bar-variant(@progress-bar-info-bg);\n}\n\n.progress-bar-warning {\n .progress-bar-variant(@progress-bar-warning-bg);\n}\n\n.progress-bar-danger {\n .progress-bar-variant(@progress-bar-danger-bg);\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Progress bars\n\n.progress-bar-variant(@color) {\n background-color: @color;\n\n // Deprecated parent class requirement as of v3.2.0\n .progress-striped & {\n #gradient > .striped();\n }\n}\n",".media {\n // Proper spacing between instances of .media\n margin-top: 15px;\n\n &:first-child {\n margin-top: 0;\n }\n}\n\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n\n.media-body {\n width: 10000px;\n}\n\n.media-object {\n display: block;\n\n // Fix collapse in webkit from max-width: 100% and display: table-cell.\n &.img-thumbnail {\n max-width: none;\n }\n}\n\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n\n.media-middle {\n vertical-align: middle;\n}\n\n.media-bottom {\n vertical-align: bottom;\n}\n\n// Reset margins on headings for tighter default spacing\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n\n// Media list variation\n//\n// Undo default ul/ol styles\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n","//\n// List groups\n// --------------------------------------------------\n\n\n// Base class\n//\n// Easily usable on