sourcecode

ASP.NET 사이트 맵

codebag 2023. 9. 20. 20:19
반응형

ASP.NET 사이트 맵

SQL 기반 ASP를 만든 경험이 있는 사람이 있습니까?NET 사이트 맵 프로바이더?

기본 XML 파일을 가지고 있습니다.web.sitemap내 메뉴 및 사이트 맵 경로 컨트롤로 제대로 작동하지만, 내 사이트의 사용자가 페이지를 동적으로 만들고 수정할 수 있는 방법이 필요합니다.

페이지 보기 권한을 표준에 연결해야 합니다.ASP.NET회원제도.

MSDN 매거진의 Jeff Prosise 버전은 꽤 잘 작동하지만 몇 가지 결점이 있습니다.

AddNode당신의 메뉴에 있는 외부 사이트(www.google.com 등)에 대한 링크로 기겁을 합니다.

내가 해결할 문제가 여기 있습니다.BuildSiteMap():

SiteMapNode node = GetSiteMapNodeFromReader(reader);
string url = node.Url;
if (url.Contains(":"))
{
    string garbage = Guid.NewGuid().ToString();  // SiteMapNode needs unique URLs
    node.Url = "~/dummy_" + garbage + ".aspx";
    AddNode(node, _root);
    node.Url = url;
}
else
{
    AddNode(node, _root);
}

SQLDependency캐싱은 멋지지만 메뉴가 로드될 때마다 DB로 이동하고 싶지 않고(의존성이 변경되었는지 확인하기 위해) 메뉴가 자주 변경되지 않는다면 사용하지 않는 것이 좋습니다.HttpRuntime.Cache대신에?

public override SiteMapNode RootNode
{
    get
    {
        SiteMapNode temp = (SiteMapNode)HttpRuntime.Cache["SomeKeyName"];
        if (temp == null)
        {
            temp = BuildSiteMap();
            HttpRuntime.Cache.Insert("SomeKeyName", temp, null, DateTime.Now.AddHours(1), Cache.NoSlidingExpiration);
        }
        return temp;
    }
}

언급URL : https://stackoverflow.com/questions/120/asp-net-site-maps

반응형