Maarten Balliauw가 ASP.NET MVC SiteMapProvider을 사용 중입니다.MvcSiteMapProvider - 간헐적으로 메뉴가 사라집니다.
헬퍼를 사용하여 기본 탐색 및 이동 경로를 표시합니다. 가끔은 렌더링 된 페이지에서 완전히 사라지는 것을 보았습니다.
로컬 환경에서 프로젝트를 다시 작성하고 다시 브라우저에있는 현재 페이지에서 탐색해야합니다. 제작 과정에서 사이트 DLL을 다시 업로드해야한다는 사실을 발견했습니다. 이러한 "수정 사항"자체는 혼재 된 성공으로 만 작동합니다.
"약간"패턴이 있지만 확인되지 않았습니다.보기를 편집하거나 업로드 할 때 문제가 발생합니다.
도움을 주시면 감사하겠습니다.
이맵 파일의 부분 :
<mvcSiteMapNode title="Home" controller="Home" action="Index" key="home">
<mvcSiteMapNode title="About us" controller="about" action="index" key="about">
<mvcSiteMapNode title="Our Approach" controller="about" action="approach" url="/about/our-approach" imageUrl="/content/images/ourApproachNavImg.jpg" />
</mvcSiteMapNode>
<mvcSiteMapNode title="News" controller="news" action="index" key="news" showSubNav="false">
<mvcSiteMapNode dynamicNodeProvider="XXX.Helpers.NewsItemDynamicNodeProvider, KDC" title="" />
</mvcSiteMapNode>
</mvcSiteMapNode>
헬퍼 :
이@Html.MvcSiteMap().Menu(false, true, false)
@Html.MvcSiteMap().SiteMapPath()
dynamicNodeProvider : Web.config의에서
public override IEnumerable<DynamicNode> GetDynamicNodeCollection()
{
var returnValue = new List<DynamicNode>();
var newsItemService = DependencyResolver.Current.GetService<INewsItemService>();
foreach (var item in newsItemService.GetAll(true, true))
{
DynamicNode node = new DynamicNode();
node.Title = item.Title;
node.Action = "detail";
node.RouteValues.Add("url", item.Url);
returnValue.Add(node);
}
return returnValue;
}
MvcSiteMapProvider 표준에 따라 여기 내 코드의 일부입니다 변경되지 않았습니다.
MVC4에서 v4를 사용하고 있으며 여전히 동일한 문제를 관찰하고 있습니다. 이것은 새로 소개 된 오류이거나이 대답은 실제로 정답이 아닙니까? – Dorival
메뉴와 빵 부스러기가 사라지거나 전혀 나타나지 않습니까? 이는 v4가 무작위로 사라지는 경우 v4가 출시 된 이후 발생한 첫 번째 보고서입니다. 문제가되는 작은 데모 프로젝트를 만들고 @ Github : https://github.com/maartenba/MvcSiteMapProvider/issues/new에서 새 문제를 만드십시오. – NightOwl888