IRepositoryFactory: Yes
CrudActionProvider?  Whoops!

...and I was so determined not to make a fool of myself in my first
post to this group!

Sorry about that, and thanks for the help!

On Jan 15, 5:11 am, Mike Nichols <[email protected]> wrote:
> Hi Morcs
> I am sure you have already checked but are you sure your
> IRepositoryFactory and IDynamicActionProviders are registered on the
> container?
>
> On Jan 14, 4:40 am, morcs <[email protected]> wrote:
>
> > Hi there,
>
> > I'm using the Castle trunk, and I understand that thanks to Mike
> > Nichols and his WindsorDynamicActionProviderFactory:
>
> >http://groups.google.com/group/castle-project-devel/browse_thread/thr...
>
> > I should be able to get Windsor to instantiate my
> > DynamicActionProvider with my repository factory.
>
> > I have the following code:
>
> > [DynamicActionProvider(typeof(CrudActionProvider))]
> > public class MyController : Controller
> > {
>
> > }
>
> > public class CrudActionProvider : IDynamicActionProvider
> > {
> >     private IRepositoryFactory repositoryFactory;
>
> >     public CrudActionProvider(IRepositoryFactory repositoryFactory)
> >     {
> >         this.repositoryFactory = repositoryFactory;
> >     }
>
> >     public void IncludeActions(IEngineContext engineContext,
> > IController controller, IControllerContext controllerContext)
> >     {
> >         ((Controller)controller).DynamicActions["List"] = new
> > ListAction(repositoryFactory);
> >     }
>
> > }
>
> > Unfortunately when I hit the action I get:
>
> > No parameterless constructor defined for this object.
>
> > I can see the Windsor class in the stack trace though:
>
> > [MissingMethodException: No parameterless constructor defined for this
> > object.]
> >    System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean
> > publicOnly, Boolean noCheck, Boolean& canBeCached,
> > RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck) +0
> >    System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean
> > fillCache) +86
> >    System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean
> > skipVisibilityChecks, Boolean fillCache) +230
> >    System.Activator.CreateInstance(Type type, Boolean nonPublic) +67
> >    System.Activator.CreateInstance(Type type) +6
>
> > Castle.MonoRail.Framework.Services.DefaultDynamicActionProviderFactory.Create
> > (Type dynamicActionProviderType) +316
>
> > Castle.MonoRail.WindsorExtension.WindsorDynamicActionProviderFactory.Create
> > (Type dynamicActionProviderType) +149
> >    Castle.MonoRail.Framework.Controller.ProcessDynamicActionProviders
> > () +184
> >    Castle.MonoRail.Framework.Controller.PrepareToExecuteAction
> > (IEngineContext engineContext, IControllerContext context) +140
> >    Castle.MonoRail.Framework.Controller.Process(IEngineContext
> > engineContext, IControllerContext context) +53
> >    Castle.MonoRail.Framework.BaseHttpHandler.Process(HttpContext
> > context) +175
>
> > Many thanks for any help you can give,
>
> > morcs
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Castle Project Users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/castle-project-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to