Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MvcSiteMapProvider和带有连字符的url_C#_Asp.net Mvc_Asp.net Mvc Routing_Mvcsitemapprovider - Fatal编程技术网

C# MvcSiteMapProvider和带有连字符的url

C# MvcSiteMapProvider和带有连字符的url,c#,asp.net-mvc,asp.net-mvc-routing,mvcsitemapprovider,C#,Asp.net Mvc,Asp.net Mvc Routing,Mvcsitemapprovider,我有一个MVC站点正在使用带有连字符的URL进行SEO优化,例如: www.domain.com/about-us/know-our-services 现在我已经实现了MvcSiteMapProvider来生成动态面包屑,但是对于带有连字符的URL,它不起作用,在站点地图上找不到它 如何解决此问题?生成自定义URL的推荐方法是调整路由以构建URL方案。为了让MvcSiteMapProvider生成正确的URL,您必须确保可以解析传出路由 路线是双向映射。传入路由在RouteBase类的GetR

我有一个MVC站点正在使用带有连字符的URL进行SEO优化,例如:

www.domain.com/about-us/know-our-services
现在我已经实现了MvcSiteMapProvider来生成动态面包屑,但是对于带有连字符的URL,它不起作用,在站点地图上找不到它


如何解决此问题?

生成自定义URL的推荐方法是调整路由以构建URL方案。为了让MvcSiteMapProvider生成正确的URL,您必须确保可以解析传出路由

路线是双向映射。传入路由在RouteBase类的GetRouteData方法中确定。传出路由由RouteBase类的GetVirtualPath方法确定。输入路径是MVC用来确定与给定控制器和操作匹配的URL的路径。MVC和MvcSiteMapProvider用于解析URL的GetVirtualPath方法,因此必须实现该方法才能使MvcSiteMapProvider与自定义URL一起工作


看看如何通过对RouteBase子类化来实现这些方法。当注册Route类时,这些相同的想法也适用-您必须确保双向解析才能使其工作。

1st-seem->not seam,2nd-有什么问题?我们需要更多细节来帮助您。您如何生成动态面包屑?