Right, now I remember that I had to modify randomcode's implementation
to take that into account, resulting in some *very* hacky code.
For my particular project, just getting the first MethodInfo from the
list was enough, I try to avoid method overloading on the controllers
as much as possible.

On Aug 4, 11:34 am, Avishay Lavie <[email protected]> wrote:
> Ken nailed the problem precisely: mapping action names to MethodInfos is
> easy enough until you have to deal with overloads -- specifically, cases
> where the filter should run on some overloads but not on others.
>
>
>
> On Tue, Aug 4, 2009 at 5:28 PM, Ken Egozi <[email protected]> wrote:
> > mrController.MetaDescriptor.Actions[currentActionName]
> > might be an IList of MethodInfo (when you have action overloads, on a
> > SmartDispatcherController).
> > In that case, you'd need a way to retrieve the selected MethodInfo. The
> > Action's name alone would not suffice.
> > Avishay's concern (it's also mine) could be addressed wither by a way of
> > getting hold of the selected MethodInfo (or ActionMetaDescription), or
> > othrwise by adding Action-Level filters to the mix, which IMO is the easier
> > way out, and will be useful on other scenarios also
>
> > On Tue, Aug 4, 2009 at 5:22 PM, Mauricio Scheffer <
> > [email protected]> wrote:
>
> >> Take a look at this:
> >>http://randomcode.net.nz/2008/03/03/adding-action-filters-to-monorail...
>
> >> Not an perfect implementation, but it works very well.
>
> >> On Aug 4, 10:00 am, Avish <[email protected]> wrote:
> >> > Hi. I hope this is the right place for this.
>
> >> > I want to apply a cross-cutting concern selectively to a set of
> >> > controller actions. Normally I'd use a filter, but these can only be
> >> > applied on the controller level. My questions are:
>
> >> > 1. Is there a good reason why filters can't be declared on a per-
> >> > action basis (as in other than "nobody implemented it yet")?
>
> >> > 2. I could mimic an action-level filter using a controller-level
> >> > filter by reading other attributes from the action itself, but the
> >> > problem is I can't find the selected action at the time the filter
> >> > runs (the ControllerContext gives me the action name, but that could
> >> > map to any number of overloads on a SmartDispatcherController). The
> >> > filter is run after the specific overload has been selected, so is
> >> > there a way to get to it? Anything from MethodInfo to
> >> > ActionMetaDescriptor to IExectuableAction would do.
>
> > --
> > Ken Egozi.
> >http://www.kenegozi.com/blog
> >http://www.delver.com
> >http://www.musicglue.com
> >http://www.castleproject.org
> >http://www.gotfriends.co.il
--~--~---------~--~----~------------~-------~--~----~
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