It looks like the pattern being used for the route is over-zealous. Even if I call the "Redeem" action on the CouponController directly, it gets munged up and will only receive "Redeem" as the parameter. If I take out the routing, it works fine.
I'm confused by the interface on this. Does anyone have any idea why it would be passing "Redeem" as the coupon code when I call http://mysite/Coupon/Redeem.html?couponCode=somecoupon ? On Jul 20, 9:45 am, JakeS <[email protected]> wrote: > Castle.Monorail.Framework.dll appears to be the same on both > machines-- file version 1.0.3.0. Looking at the assembly with > Reflector I see the Castle.MonoRail.Framework.Routing namespace and > the RoutingModuleEx class within. > > There aren't any castle libraries in the GAC on either machine. > > Maybe I will try to update to the latest snapshot binaries. I'm just > afraid of what unforseen consequences that might have too. > > On Jul 20, 3:28 am, Jonathon Rossi <[email protected]> wrote: > > > I just checked and RoutingModuleEx wasn't available in RC3, can you get the > > subversion revision number from the file version of MR framework dll. > > > You could try checking out the source at that revision and debugging the > > routing module. > > > Do you have any other castle binaries in the GAC on either machine? > > > On Mon, Jul 20, 2009 at 8:15 AM, JakeS <[email protected]> wrote: > > > > I've inherited a project using MonoRail and routing that works fine on > > > my dev box, but has a strange issue in production. The project > > > includes all the Castle binaries required, so the versions appear to > > > be the same on both machines -- 1.0.3.0 (old I know). > > > > The global.asax has the following defined: > > > > RoutingModuleEx.Engine.Add( > > > new PatternRoute("/coupon/<couponCode>") > > > .DefaultForController().Is("coupon") > > > .DefaultForAction().Is("Redeem")); > > > > And there's a CouponController.cs that has the following action: > > > > public void Redeem(string couponCode) > > > { > > > Logger.Fatal("coupon used: " + couponCode); > > > if (couponManager.IsValidCouponCode(couponCode)) > > > UserSession.SignUp.CouponCode = couponCode; > > > RedirectToSiteRoot(); > > > } > > > > If I go tohttp://mydevmachine/coupon/1231thenthe logger shows > > > "coupon used: 1231". But mysteriously the production server shows > > > "coupon used: Redeem". > > > > Anything short of updating the entire set of castle binaries I can do > > > to hunt down this problem? I'm reluctant to rebuild with the newest > > > binaries-- I've tried switching them out on other projects and found > > > enough syntax changes to be painful. > > > -- > > Jono --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
