Castle Core provides common Castle Project abstractions including logging services. It also features Castle DynamicProxy a lightweight runtime proxy generator, and Castle DictionaryAdapter.
See the documentation.
See the Releases.
Debugging symbols are available in symbol packages in the AppVeyor build artifacts since version 4.1.0. For example, here are the artifacts for 4.1.0.
Castle Core is © 2004-2022 Castle Project. It is free software, and may be redistributed under the terms of the Apache 2.0 license.
Browse the contributing section of our Home repository to get involved.
Compilation requires the .NET 10 SDK.
Running the unit tests additionally requires the .NET Framework 4.6.2+ and the .NET 8 and 9 runtimes to be installed. (If you do not have all of those installed, you can run the tests for a specific target framework using dotnet test -f <framework>.)
| Platforms | NuGet Feed |
|---|---|
| Windows & Linux | Preview Feed |
build.cmd
./build.sh
ℹ️ Mono runtime support: We used to run tests on the Mono 6.0 runtime, but stopped doing so as the project has been deprecated. See the official announcement on the Mono homepage.
The following conditional compilation symbols (vertical) are currently defined for each of the build configurations (horizontal):
| Symbol | .NET 4.6.2 | .NET Standard 2.x and .NET 8+ |
|---|---|---|
FEATURE_APPDOMAIN |
✅ | 🚫 |
FEATURE_ASSEMBLYBUILDER_SAVE |
✅ | 🚫 |
FEATURE_SERIALIZATION |
✅ | 🚫 |
FEATURE_SYSTEM_CONFIGURATION |
✅ | 🚫 |
FEATURE_APPDOMAIN- enables support for features that make use of an AppDomain in the host.FEATURE_ASSEMBLYBUILDER_SAVE- enabled support for saving the dynamically generated proxy assembly.FEATURE_SERIALIZATION- enables support for serialization of dynamic proxies and other types.FEATURE_SYSTEM_CONFIGURATION- enables features that use System.Configuration and the ConfigurationManager.
