Inversion of control
As you may already know I am writing a website. I've chosen to use MonoRail for the web part and ECO for the persistence. Today has been great fun! I have modified the Castle.MonoRail.EcoSupport library with the following enhancements. You can now specify a [DefaultEcoSpaceType(typeof(MyEcoSpace))] on either the class or method. On the EcoDataBind reflection attribute you can now specify as little as [EcoDataBind("Product")] on your method parameter, this will use the specified DefaultEcoSpaceType specified, or throw an exception if no default was specified. This lets me write code like this [AllowEcoSpaceDeactivateDirty(true)] [UseEcoSpacePool(false)] [UseEcoSpaceSession(EcoSpaceStrategyHandler.SessionStateMode.Never)] public class ProductAdminController : BaseController { public void Create() { PropertyBag["Product"] = new Product(GetEcoSpace<MyWebSiteEcoSpace>()); RenderView("Modify"); } } I can now easily create actions Creat