Castle Project

written by Scott Watermasysk on Thursday, May 08 2008

Castleinabox For the last couple of weeks I have been digging through a bunch of new projects/concepts with the hope of using some new (to me) things in a couple application samples/prototypes I am itching to build. One of the projects I have been spending a lot of time with recently is the Castle Project.

From the site:

Castle is an open source project for .net that aspires to simplify the development of enterprise and web applications. Offering a set of tools (working together or independently) and integration with others open source projects, Castle helps you get more done with less code and in less time.

For the longest time, I mistakenly assumed Castle was just Monorail. I was very wrong. There is a lot of great things in this project that you can easily leverage when building your own solutions...even if you could care less about MVC/Monrail.

My Favorites:

  • ActiveRecord: "The enterprise data mapping pattern implemented using NHibernate". In a nutshell it makes the power of NHibernate extremly accessible with almost zero effort.
  • Windsor Container Entperise grade inversion of control container. I have written a lot of plugin/extensibility code in the last couple of years which could have dramatically simplified and reduced with Windsor.
  • Validators A light weight validation framework. There is a nice example of integrating it with LiveValidation and using it with ASP.Net MVC.

There is actually quite a bit more there as well. The funny thing is I have been using Castle's updated version of NVelocity for quite a while and never really bothered to look around much until recently. If you are unfamiliar with the project, I definitely recommend taking a peak. I am sure you will find something which will help you on a future project.

Similar Posts

  1. Graffiti CMS FAQ
  2. Unfuddle == BaseCamp For Developers
  3. ASP.Net MVC - A Step Towards A More Simple ASP.Net?

Trackbacks

Use the following link to trackback from your own site:
http://simpable.com/trackback.ashx?id=73

  • Link Listing - May 8, 2008 on on 5.09.2008 at 8:56 AM

    Link Listing - May 8, 2008

  • Link Listing - May 8, 2008 on on 5.09.2008 at 8:56 AM

    Sharepoint Creating Hierarchical Menus with a CustomAction in SharePoint [Via: Jan Tielens ] WPF Metadata...

  • Everyman Links for May 9, 2008 on on 5.11.2008 at 12:49 AM

    Oliver Stone does W. On Saturdays Entertainment Weekly arrives in Vermont and I usually read it from

  • Everyman Links for May 9, 2008 on on 5.11.2008 at 1:09 AM

    Oliver Stone does W. On Saturdays Entertainment Weekly arrives in Vermont and I usually read it from

Comments

  • Marc Brooks on on 5.09.2008 at 12:10 AM

    Marc Brooks avatar

    Minor typo on Monorail (as Monrail) on the link.

  • Scott Watermasysk on on 5.09.2008 at 7:51 AM

    Scott Watermasysk avatar

    Hi Marc,

    Fixed. Thanks.

    -Scott

  • Brendan Tompkins on on 5.09.2008 at 9:12 AM

    Brendan Tompkins avatar

    Scott,

    I've been delving into these recently... The entire time, that Velvet Underground song "I'm beginning to see the light" is in the back of my mind.. :)

    After doing IOC with windsor, I'd never go back to any other plugin strategy.. Combine that with logging via Log4Net (injected) and NHibernate, and building apps is fun again.

    Are we to ever see support for this stuff in Telligent products?

  • Scott Watermasysk on on 5.09.2008 at 9:19 AM

    Scott Watermasysk avatar

    >> Are we to ever see support for this stuff in Telligent products?

    You should start to see some usage, especially in newer products and existing product enhancements. For things that currently work, there really isn't a need to recode for the sake of recoding.

    We are likely going to use NHiberate in v.Next of Community Server for new functionality and will apply it more to the data layer over time (assuming everything works out) as different areas are reviewed/updated.

    I am not yet sure we will use ActiveRecod or straight NHiberate. I really like ActiveRecord, but I think our needs for Community Server are complex enough to warrant the extra work. (Should know more in a couple of weeks.)

    For something like Graffiti, I kick myself for not finding AcitveRecord sooner. I spent quite a bit of time writing our own cross database tool which works really well, but probably could have been replaced with ActiveRecord. Another day, another thing learned. :)

Post a comment