https://github.com/castleproject/Windsor
Castle Windsor is a best of breed, mature Inversion of Control container available for .NET
https://github.com/castleproject/Windsor
Last synced: about 1 month ago
JSON representation
Castle Windsor is a best of breed, mature Inversion of Control container available for .NET
- Host: GitHub
- URL: https://github.com/castleproject/Windsor
- Owner: castleproject
- License: apache-2.0
- Created: 2011-10-23T07:01:06.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2024-07-11T13:06:28.000Z (9 months ago)
- Last Synced: 2024-10-10T17:43:55.880Z (6 months ago)
- Language: C#
- Homepage: http://www.castleproject.org
- Size: 99.2 MB
- Stars: 1,515
- Watchers: 102
- Forks: 456
- Open Issues: 92
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
- awesome-dotnet-core - Castle.Windsor
- awesome-dotnet-core - Castle.Windsor - IoC容器。 (框架, 库和工具 / 控制反转IOC)
- fucking-awesome-dotnet-core - Castle.Windsor
- awesome-dotnet-core - Castle.Windsor
README
# Castle Windsor
Castle Windsor is a best of breed, mature Inversion of Control container available for .NET.
See the [documentation](docs/README.md).
## Releases
See the [releases](https://github.com/castleproject/Windsor/releases).
## License
Castle Windsor is © 2004-2023 Castle Project. It is free software, and may be redistributed under the terms of the [Apache 2.0](http://opensource.org/licenses/Apache-2.0) license.
## NuGet Preview Feed
If you would like to use preview NuGet's from our CI builds on AppVeyor, you can add the following NuGet source to your project:
```
https://ci.appveyor.com/nuget/windsor-qkry8n2r6yak
```## Building
### Conditional Compilation Symbols
The following conditional compilation symbols are currently defined for Windsor:
Symbol | .NET 4.6.2 | .NET Standard / 6
----------------------------------- | ------------------ | ------------------
`FEATURE_APPDOMAIN` | :white_check_mark: | :no_entry_sign:
`FEATURE_ASSEMBLIES` | :white_check_mark: | :no_entry_sign:
`FEATURE_PERFCOUNTERS` | :white_check_mark: | :no_entry_sign:
`FEATURE_REMOTING` | :white_check_mark: | :no_entry_sign:
`FEATURE_SECURITY_PERMISSIONS` | :white_check_mark: | :no_entry_sign:
`FEATURE_SERIALIZATION` | :white_check_mark: | :no_entry_sign:
`FEATURE_SYSTEM_CONFIGURATION` | :white_check_mark: | :no_entry_sign:* `FEATURE_APPDOMAIN` - enables support for features that make use of an AppDomain in the host.
* `FEATURE_ASSEMBLIES` - uses `AssemblyName.GetAssemblyName()` and `Assembly.LoadFile()`.
* `FEATURE_PERFCOUNTERS` - enables code that uses Windows Performance Counters.
* `FEATURE_REMOTING` - supports remoting on various types including inheriting from `MarshalByRefObject`.
* `FEATURE_SECURITY_PERMISSIONS` - enables the use of CAS and `Security[Critical|SafeCritical|Transparent]`.
* `FEATURE_SERIALIZATION` - enables support for serialization of dynamic proxies and other types.
* `FEATURE_SYSTEM_CONFIGURATION` - enables features that use `System.Configuration` and the `ConfigurationManager`.The following conditional compilation symbols are defined for tests only under .NET 4.6.2:
* `FEATURE_CODEDOM` - enables code that uses `System.CodeDom`.
* `FEATURE_CONSOLETRACELISTENER` - enables code that requires `System.Diagnostics.ConsoleTraceListener`.
* `FEATURE_THREADABORT` - enables code that uses `Thread.Abort()`.
* `FEATURE_WPF` - enables code that uses `PresentationCore.dll`.