GitHunt
CH

Castle Windsor is a best of breed, mature Inversion of Control container available for .NET

Castle Windsor

Castle Windsor is a best of breed, mature Inversion of Control container available for .NET.

See the documentation.

Releases

See the releases.

License

Castle Windsor is ยฉ 2004-2017 Castle Project. It is free software, and may be redistributed under the terms of the Apache 2.0 license.

Building

Conditional Compilation Symbols

The following conditional compilation symbols are currently defined for Windsor:

Symbol .NET 4.5 .NET Standard
CASTLE_SERVICES_LOGGING โœ… ๐Ÿšซ
FEATURE_APPDOMAIN โœ… ๐Ÿšซ
FEATURE_ASSEMBLIES โœ… ๐Ÿšซ
FEATURE_EVENTLOG โœ… ๐Ÿšซ
FEATURE_GAC โœ… ๐Ÿšซ
FEATURE_GETCALLINGASSEMBLY โœ… ๐Ÿšซ
FEATURE_ISUPPORTINITIALIZE โœ… ๐Ÿšซ
FEATURE_NETCORE_REFLECTION_API ๐Ÿšซ โœ…
FEATURE_PERFCOUNTERS ย  ย  ย  ย ย  ย  โœ… ๐Ÿšซ
FEATURE_REFLECTION_METHODBODY ย ย  โœ… ๐Ÿšซ
FEATURE_REMOTING โœ… ๐Ÿšซ
FEATURE_SECURITY_PERMISSIONS โœ… ๐Ÿšซ
FEATURE_SERIALIZATION โœ… ๐Ÿšซ
FEATURE_SYSTEM_CONFIGURATION โœ… ๐Ÿšซ
FEATURE_SYSTEM_WEB โœ… ๐Ÿšซ
FEATURE_URIMEMBERS โœ… ๐Ÿšซ
FEATURE_WINFORMS โœ… ๐Ÿšซ
  • CASTLE_SERVICES_LOGGING - enables access to Castle.Services.Logging.log4netIntegration and Castle.Services.Logging.NLogIntegration in the logging facility.
  • FEATURE_APPDOMAIN - enables support for features that make use of an AppDomain in the host.
  • FEATURE_ASSEMBLIES - uses AssemblyName.GetAssemblyName() and Assembly.LoadFile().
  • FEATURE_EVENTLOG - uses Castle Core APIs that are based on the Windows Event Log.
  • FEATURE_GAC - enables support for obtaining assemblies using an assembly's long form name.
  • FEATURE_GETCALLINGASSEMBLY - enables code that uses System.Reflection.Assembly.GetCallingAssembly().
  • FEATURE_ISUPPORTINITIALIZE - enables support for features that make use of System.ComponentModel.ISupportInitialize.
  • FEATURE_NETCORE_REFLECTION_API - provides shims to implement missing functionality in .NET Core that have no alternatives.
  • FEATURE_PERFCOUNTERS - enables code that uses Windows Performance Counters.
  • FEATURE_REFLECTION_METHODBODY - enables code that uses System.Reflection.MethodBase.GetMethodBody() to get access to the MSIL for a method.
  • 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.
  • FEATURE_SYSTEM_WEB - enables code that uses System.Web and System.Web.UI.
  • FEATURE_URIMEMBERS - enables code that uses Uri.SchemeDelimiter.
  • FEATURE_WINFORMS - enables code that uses Windows Forms.

The following conditional compilation symbols are defined for tests only under .NET 4.5:

  • 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.
  • NUNIT_SETCULTUREATTRIBUTE - uses NUnit.Framework.SetCultureAttribute.
  • NUNIT_TIMEOUTATTRIBUTE - uses NUnit.Framework.TimeoutAttribute.

Languages

C#99.9%Batchfile0.1%ASP0.0%
Other
Created September 29, 2017
Updated September 29, 2017