使用 MVC 安装 Umbraco 后无法路由
Unable to route after installing Umbraco with MVC
我最近在现有网站上安装了 Umbraco
CMS。就安装而言,一切似乎都很好。
但问题是我现在无法浏览我现有的网站。我在 RouteConfig.cs
中定义的路线没有命中,而是从其他地方选择的路线。
有人可以帮我解决这个问题吗?当前路由从哪里开始,我如何配置它以使用我现有的路由?
在 Umbraco 中,您可以将自定义 MVC 路由放在继承自 IApplicationEventHandler
的 class 中。
使用来自 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 将在它的启动序列中选择它。
我最近在现有网站上安装了 Umbraco
CMS。就安装而言,一切似乎都很好。
但问题是我现在无法浏览我现有的网站。我在 RouteConfig.cs
中定义的路线没有命中,而是从其他地方选择的路线。
有人可以帮我解决这个问题吗?当前路由从哪里开始,我如何配置它以使用我现有的路由?
在 Umbraco 中,您可以将自定义 MVC 路由放在继承自 IApplicationEventHandler
的 class 中。
使用来自 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 将在它的启动序列中选择它。