我正在使用 Telerik 的 MVC 扩展来绑定站点地图,如他们的演示页面所示: http: //demos.telerik.com/aspnet-mvc/panelbar/sitemapbinding
但是当使用以下代码渲染站点地图时,大约需要 6 秒
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%
Html.Telerik().PanelBar()
.Name("SiteMapPanelBar")
.BindTo("sitemap")
.Render();
%>
(同样的问题存在于 TreeView 而不是 PanelBar)
Action 方法本身执行速度很快
public partial class NavigationController : Controller
{
public const string SiteMapFile = "~/Web.sitemap";
public const string SiteMapName = "siteMap";
public const string SiteMapKey = "siteMap";
[PopulateSiteMap(SiteMapName = SiteMapName, ViewDataKey = SiteMapKey)]
public virtual ActionResult SiteMap()
{
if (!SiteMapManager.SiteMaps.ContainsKey(SiteMapKey))
{
SiteMapManager.SiteMaps.Register<XmlSiteMap>(SiteMapKey, sitmap => sitmap.LoadFrom(SiteMapFile));
}
return View();
}
}
是否有人遇到过同样的问题和/或知道问题可能是什么以及如何解决?
谢谢