我最近在我现有的网站上安装了Umbraco
CMS。就安装而言,一切似乎都很好。
但问题是我现在无法浏览我现有的网站。我在RouteConfig.cs
中定义的路由没有被命中,而是从其他地方选择路由。
在Umbraco中,你可以把自定义MVC路由放在一个继承自IApplicationEventHandler
的类中。
使用来自shazwazza.com的示例代码:
public class MyStartupHandler : IApplicationEventHandler
{
public void OnApplicationStarted(
UmbracoApplicationBase umbracoApplication,
ApplicationContext applicationContext)
{
//Create a custom route
RouteTable.Routes.MapRoute(
"test",
"Products/{action}/{id}",
new
{
controller = "MyProduct",
action = "Product",
id = UrlParameter.Optional
});
}
public void OnApplicationInitialized(
UmbracoApplicationBase umbracoApplication,
ApplicationContext applicationContext)
{
}
public void OnApplicationStarting(
UmbracoApplicationBase umbracoApplication,
ApplicationContext applicationContext)
{
}
}
这段代码覆盖了ApplicationStarted
方法。从这里,你可以添加你的自定义路由逻辑,这将被Umbraco在它的启动序列中挑选。