Skip to content
Castle Core, including Castle DynamicProxy, Logging Services and DictionaryAdapter
C# Other
Latest commit 7a1bdd4 @jonorossi jonorossi Merge pull request #126 from castleproject/nunit-on-net35
Fix unit tests to actually run on .NET 3.5 under TeamCity
Failed to load latest commit information.
buildscripts Publish unit test results to TeamCity even on test failure
docs Import Castle DynamicProxy docs from the wiki
lib We need to run nunit-console that comes with the Mono distribution, s…
src Disable 2D array unit tests on .NET 3.5 because of .NET runtime defect
tools Merge branch 'master' of
.editorconfig Altered Equality on ProxyGenerationOptions to consider attributes
.gitignore Added vim backup files to the ignore list
BreakingChanges.txt updated changes files Add
Castle.Core-SL.sln Remove unneeded MONO conditional symbols and MONO310 MSBuild configur…
Castle.Core.5.0.ReSharper Merge branch 'master' of
Castle.Core.5.1.ReSharper Merge branch '2.5.x'
Castle.Core.6.0.ReSharper Merge branch 'master' of
Castle.Core.6.1.ReSharper - trying to get the projects back into compilable shape
Castle.Core.sln Remove unneeded MONO conditional symbols and MONO310 MSBuild configur…
Castle.Core.sln.DotSettings some extra settings for R#
Changes.txt Update Changes.txt with recent changes.
ClickToBuild.cmd Merge branch 'master' of git:// into net45
License.txt Update copyright year Refactor unit tests to support NUnit and
Settings-SL.proj Added Silverlight 5 support
Settings.proj Include Serilog.dll in the output directory.
build.cmd updates to the build for SL5

Castle Core

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.


Castle Core is © 2004-2015 Castle Project. It is free software, and may be redistributed under the terms of the Apache 2.0 license.


.NET Framework and Silverlight

msbuild /p:Configuration=NET45-Release /t:RunAllTests buildscripts/Build.proj
msbuild /p:Configuration=NET40-Release /t:RunAllTests buildscripts/Build.proj
msbuild /p:Configuration=NET35-Release /t:RunAllTests buildscripts/Build.proj
msbuild /p:Configuration=SL50-Release /t:RunAllTests buildscripts/Build.proj
msbuild /p:Configuration=SL40-Release /t:RunAllTests buildscripts/Build.proj


Castle Core supports Mono 4.0.2+, previous 4.x releases have serious runtime bugs that cause runtime crashes. Mono 3.x releases used to work well, but are not supported.

xbuild /p:Configuration=NET45-Release /t:RunAllTests buildscripts/Build.proj

Conditional Compilation Symbols

The following conditional compilation symbols (vertical) are currently defined for each of the build configurations (horizontal):

Symbol NET35 NET40 NET45 SL40 SL50
FEATURE_LEGACY_REFLECTION_API :white_check_mark: :white_check_mark: :no_entry_sign: :white_check_mark: :white_check_mark:
FEATURE_SERIALIZATION :white_check_mark: :white_check_mark: :white_check_mark: :no_entry_sign: :no_entry_sign:
FEATURE_XUNITNET :no_entry_sign: :no_entry_sign: :no_entry_sign: :no_entry_sign: :no_entry_sign:
DOTNET35 :white_check_mark: :no_entry_sign: :no_entry_sign: :no_entry_sign: :no_entry_sign:
DOTNET40 :no_entry_sign: :white_check_mark: :white_check_mark: :no_entry_sign: :no_entry_sign:
DOTNET45 :no_entry_sign: :no_entry_sign: :white_check_mark: :no_entry_sign: :no_entry_sign:
SILVERLIGHT :no_entry_sign: :no_entry_sign: :no_entry_sign: :white_check_mark: :white_check_mark:
SL4 :no_entry_sign: :no_entry_sign: :no_entry_sign: :white_check_mark: :no_entry_sign:
SL5 :no_entry_sign: :no_entry_sign: :no_entry_sign: :no_entry_sign: :white_check_mark:

The __MonoCS__ symbol is used only in unit tests when compiled on Mono to work around Mono defects and non-Windows differences, however we are trying to move away from platform specific symbols as much as possible.

Something went wrong with that request. Please try again.