Asp.net mvc mvcSiteMapProvider外部链接在实时站点上不正确

Asp.net mvc mvcSiteMapProvider外部链接在实时站点上不正确,asp.net-mvc,mvcsitemapprovider,Asp.net Mvc,Mvcsitemapprovider,参考文档,我有多个站点,逻辑结构中的一些节点是从一个站点到另一个站点的。 因此,我在每个站点中都有一个站点地图来表示这一点。在调试中运行时,它工作正常,面包屑链接正常-使用controller/action/preservedLoteParameters/hostName。但是当部署到实时站点时,会向链接添加额外的部分。 e、 g.在调试中-从站点2(localhost:1234)链接将解析为“site1(localhost:5678)/Controller/Action/preservedlo

参考文档,我有多个站点,逻辑结构中的一些节点是从一个站点到另一个站点的。 因此,我在每个站点中都有一个站点地图来表示这一点。在调试中运行时,它工作正常,面包屑链接正常-使用controller/action/preservedLoteParameters/hostName。但是当部署到实时站点时,会向链接添加额外的部分。 e、 g.在调试中-从站点2(localhost:1234)链接将解析为“site1(localhost:5678)/Controller/Action/preservedloteParameter”
在发布版本中,从站点2(www.site2.com/events)链接将解析为“站点1(www.site1.com)/**events/**Controller/Action/preservedLoteParameter” 所以我的问题是——我的问题有解决方案吗(有额外的事件吗?

解决问题

我想不出这一点。不过我确实想出了一个解决这个问题的办法

  • 创建新控制器(或使用现有控制器)
  • 使用重定向:


期望:{hostname}/{Controller}/{Action}/{id}获取{hostname}/EXTRA/{Controller}/{Action}/{id}额外的事件信息是什么?您能提供代码来重现您遇到的问题吗?@NightOwl888-我创建了一个(GitHub存储库),它显示了我遇到的问题(可以在本地运行,但在发布到主机名中有额外部分的服务器(例如/extra或/Site1)时不能运行)。在回答您的问题时,re:events…是服务器上包含应用程序的文件夹。解决方案中有多个站点/应用程序。@NightOwl888-我找到了解决方法。感谢您的查看。
public ActionResult myRedirectAction(int id)
{
    return Redirect("http:localhost:1234/Controller/myAction/" + id);
}