如何获取Sitecore 7.2 C#中常规链接的URL路径

And*_*ard 1 c# sitecore sitecore7 sitecore7.2

我对Sitecore和C#都很陌生,过去几天我一直在努力解决问题,所以我希望你们中的一个人可以帮助我.

我刚从Sitecore 6升级到7,并且有一些变化.以下代码用于在Sitecore 6中工作,但是您获取LinkField的URL的方式已不再适用.

 protected string writeBalloon(Item targetItem)
    {
        string balloonString = "";

        Sitecore.Data.Fields.LinkField linkfield = targetItem.Fields["Link"];

        balloonString += "<a class='balloon-link' href='" + linkfield.Url + "'>";
        balloonString += "<div class='balloon'>";

        balloonString += "<h3>";
        balloonString += targetItem.Fields["Title"];
        balloonString += "</h3>";
        balloonString += "<p>";
        balloonString += targetItem.Fields["Text"];

        balloonString += "</p>";
        balloonString += "</div>";
        balloonString += "</a>";

        return balloonString;
    }
Run Code Online (Sandbox Code Playgroud)

我想我已经阅读/尝试了谷歌关于此事的所有文章,但我似乎仍然无法做到正确.

Sti*_*Vos 7

从Sitecore 7.2开始,一个方法GetFriendlyUrl()被添加到LinkField类来解决这个问题.

Sitecore.Data.Fields.LinkField linkfield = targetItem.Fields["Link"];
var url = linkfield.GetFriendlyUrl();
Run Code Online (Sandbox Code Playgroud)

请参阅Sitecore中的GeneralLink