In the following discussion its the case that multiple calls to C1PageRoute.GetRouteData gives an error https://compositec1.codeplex.com/discussions/352703.
This is due to the method setting a flag that it has been called, and next time the following line will fail
Verify.IsFalse(context.Items.Contains(HttpContextItem_C1PageUrl), "C1PageRoute was executed twice during the same request. If could be f.e. because there's an MVC player that have a route that matches a C1 page url.");
Looks to me that this line tries to fix a problem with the MVC player, but either way this is wrong. You should be able to call GetRouteData as many times you want without it failing.
This is due to the method setting a flag that it has been called, and next time the following line will fail
Verify.IsFalse(context.Items.Contains(HttpContextItem_C1PageUrl), "C1PageRoute was executed twice during the same request. If could be f.e. because there's an MVC player that have a route that matches a C1 page url.");
Looks to me that this line tries to fix a problem with the MVC player, but either way this is wrong. You should be able to call GetRouteData as many times you want without it failing.