创建指向Sitecore项目的链接

创建指向Sitecore项目的链接,sitecore,sitecore6,Sitecore,Sitecore6,我知道我以前做过这件事,但我似乎不记得在哪里,怎么做了 我想创建指向Sitecore中项目的链接。 此代码: Sitecore.Data.Items.Item itm = Sitecore.Context.Database.GetItem(someID); return itm.Paths.Path.ToString(); 生成以下字符串: http://localhost/sitecore/content/Home/Item1/Item11/thisItem 我希望使用以下字符串: htt

我知道我以前做过这件事,但我似乎不记得在哪里,怎么做了

我想创建指向Sitecore中项目的链接。 此代码:

Sitecore.Data.Items.Item itm = Sitecore.Context.Database.GetItem(someID);
return itm.Paths.Path.ToString();
生成以下字符串:

http://localhost/sitecore/content/Home/Item1/Item11/thisItem
我希望使用以下字符串:

http://localhost/Item1/Item11/thisItem.aspx
获取项目路径的正确方法是什么?在这种情况下,我无法使用普通的Sitecore链接:

Sitecore.Web.UI.WebControls.Link

假设您运行的是Sitecore v6或任何更新版本(使用8.2-6进行测试,也可以使用9),那么您需要此版本:


如果您仍在使用Sitecore 5.3,则可以使用此功能。请注意,Sitecore 6.0中不推荐使用此方法

string url = item.Paths.GetFriendlyUrl();

您也可以这样做:

Item.Paths.FullPath
这与:

Sitecore.Links.LinkManager.GetItemUrl(item);
您的Web控件:

<asp:HyperLink ID="HyperLinkItem" runat="server">
    Item
</asp:HyperLink>

您可以按如下方式呈现项目链接:

Sitecore.Data.Items.Item itm = Sitecore.Context.Database.GetItem(someID);
return Sitecore.Links.LinkManager.GetItemUrl(itm);
试试这个

  <asp:HyperLink ID="hlItem" runat="server">

    </asp:HyperLink>

不,一点也不一样。FullPath返回项目路径,GetItemUrl()使用链接提供程序创建友好的URL。
Sitecore.Data.Items.Item itm = Sitecore.Context.Database.GetItem(someID);
return Sitecore.Links.LinkManager.GetItemUrl(itm);
  <asp:HyperLink ID="hlItem" runat="server">

    </asp:HyperLink>
   Sitecore.Data.Items.Item itm = Sitecore.Context.Database.GetItem("/sitecore/content/Home");

    hlItem.Navigateurl =sitecore.links.linkmanager.getitemurl(itm);