IoC.Configuration
2.0.2
The main functions of IoC.Configuration library are:
1) Container agnostic configuration of dependency injection using XML configuration file. The file has section where container can be specified, that will be handling dependency injection resolutions.
Currently two popular containers are supported, Ninject and Autofac, via extension libraries IoC.Configuration.Ninject and IoC.Configuration.Autofac, that are available in Nuget.org.
The dependency injection container (e.g., Autofac, Ninject) can be easily switched in configuration file.
In addition, the configuration file has sections for settings, plugins, startup actions, dynamically generated implementations of interfaces (see autoService elements under iocConfiguration/dependencyInjection/autoGeneratedServices in example configuration files in GitHub test projects in https://github.com/artakhak/IoC.Configuration/tree/master/IoC.Configuration.Tests).
2) Container agnostic configuration of dependency injection in code.
The bindings are specified using IoC.Configuration chained methods, however the actual resolutions are done using one of the popular dependency injection containers, Ninject and Autofac, via extension libraries IoC.Configuration.Ninject and IoC.Configuration.Autofac.
Note: Use either IoC.Configuration.Ninject 2.0.0 or higher, or IoC.Configuration.Autofac 2.0.0 with IoC.Configuration.Autofac 2.x.x.
Install-Package IoC.Configuration -Version 2.0.2
dotnet add package IoC.Configuration --version 2.0.2
<PackageReference Include="IoC.Configuration" Version="2.0.2" />
paket add IoC.Configuration --version 2.0.2
Detailed documentation on IoC.Configuration is available at http://iocconfiguration.readthedocs.io.
Source code can be found at https://github.com/artakhak/IoC.Configuration.
There is a test project IoC.Configuration.Tests at this location, demonstrating how to do file and code based configuration of dependency injection (the examples use IoC.Configuration.Autofac and IoC.Configuration.Ninject extensions available in NuGet).
The test project has a sample XML configuration file for type bindings (and for providing some other functionality), which demonstrates most features of IoC.Configuration.
The sample configuration file can be downloaded at https://github.com/artakhak/IoC.Configuration/blob/master/IoC.Configuration.Tests/IoCConfiguration_Overview.xml.
The XML configuration file is validated against schema file IoC.Configuration.Schema.2F7CE7FF-CB22-40B0-9691-EAC689C03A36.xsd.
The schema file along with a template XML configuration file can be found in folder
IoC.Cnfiguration.Content in package directory or at https://github.com/artakhak/IoC.Configuration/tree/master/IoC.Configuration/IoC.Configuration.Content.
Detailed documentation on IoC.Configuration is available at http://iocconfiguration.readthedocs.io.
Source code can be found at https://github.com/artakhak/IoC.Configuration.
There is a test project IoC.Configuration.Tests at this location, demonstrating how to do file and code based configuration of dependency injection (the examples use IoC.Configuration.Autofac and IoC.Configuration.Ninject extensions available in NuGet).
The test project has a sample XML configuration file for type bindings (and for providing some other functionality), which demonstrates most features of IoC.Configuration.
The sample configuration file can be downloaded at https://github.com/artakhak/IoC.Configuration/blob/master/IoC.Configuration.Tests/IoCConfiguration_Overview.xml.
The XML configuration file is validated against schema file IoC.Configuration.Schema.2F7CE7FF-CB22-40B0-9691-EAC689C03A36.xsd.
The schema file along with a template XML configuration file can be found in folder
IoC.Cnfiguration.Content in package directory or at https://github.com/artakhak/IoC.Configuration/tree/master/IoC.Configuration/IoC.Configuration.Content.
Release Notes
-Reverted the value of property "Build Action" of the schema file "IoC.Configuration.Schema.2F7CE7FF-CB22-40B0-9691-EAC689C03A36.xsd" back to "Content", so that the file is included in package. This file is needed only for editting the configuration files in XML editors like Visual Studio, other that, the schema file is not needed, since it is an embedded resource as of version 2.0.1.
-Added a copy of this file with property "Build Action" set to "Embedded resource".
Dependencies
-
.NETStandard 2.0
- JetBrains.Annotations (>= 10.2.1)
- Microsoft.CodeAnalysis (>= 2.3.2)
- OROptimizer.Shared (>= 2.0.0)
- System.Runtime.Loader (>= 4.3.0)
Used By
NuGet packages (2)
Showing the top 2 NuGet packages that depend on IoC.Configuration:
Package | Downloads |
---|---|
IoC.Configuration.Ninject
A Ninject extension for IoC.Configuration 2.
Source code can be found at https://github.com/artakhak/IoC.Configuration
Detailed documentation on IoC.Configuration is available at http://iocconfiguration.readthedocs.io
Look at http://iocconfiguration.readthedocs.io/
|
|
IoC.Configuration.Autofac
An Autofac extension for IoC.Configuration 2.0.0.
Detailed documentation on IoC.Configuration is available at http://iocconfiguration.readthedocs.io
Look at http://iocconfiguration.readthedocs.io/
|
GitHub repositories
This package is not used by any popular GitHub repositories.
Version History
Version | Downloads | Last updated |
---|---|---|
2.0.2 | 240 | 3/17/2019 |
2.0.1 | 195 | 3/17/2019 |
2.0.0 | 290 | 2/27/2019 |
1.0.6 | 372 | 6/12/2018 |
1.0.5 | 368 | 6/11/2018 |
1.0.4 | 352 | 6/5/2018 |
1.0.3 | 471 | 5/9/2018 |
1.0.2 | 352 | 5/9/2018 |
1.0.1 | 407 | 4/18/2018 |
1.0.0 | 455 | 4/18/2018 |
1.0.0-beta4 | 362 | 4/4/2018 |
1.0.0-beta3 | 406 | 4/2/2018 |
1.0.0-beta2 | 483 | 4/1/2018 |
1.0.0-beta | 340 | 4/1/2018 |