Umbraco中的RelatedLink的使用

Posted wphl-27

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Umbraco中的RelatedLink的使用相关的知识,希望对你有一定的参考价值。

Umbraco中经常需要使用到RelatedLink, 那么在代码中我们如何来获取RelatedLink呢,

可能在Backoffice中我们有一个RelatedLink, 上面有3个链接,如下所示:
技术分享图片

 

 我们在项目开发过程中,有两种方式来处理它们

方式1 :  采用 JArray  (引用命名空间  Newtonsoft.Json.Linq)

using Newtonsoft.Json.Linq;

public static class Helper
{
    public static List<RelatedLink> GetRelatedLinks(IPublishedContent contentItem, string propertyAlias)
   {
      List<RelatedLink> relatedLinksList = null;
        
       UmbracoHelper uHelper = new UmbracoHelper(UmbracoContext.Current);
            IPublishedProperty relatedLinkProperty = contentItem.GetProperty(propertyAlias);

            if (relatedLinkProperty != null && relatedLinkProperty.HasValue && relatedLinkProperty.Value.ToString().Length > 2)
            {
                relatedLinksList = new List<RelatedLink>();
                JArray relatedLinks = (JArray)relatedLinkProperty.Value;

                foreach (JObject linkItem in relatedLinks)
                {
                    string linkUrl = (linkItem.Value<bool>("isInternal")) ? uHelper.NiceUrl(linkItem.Value<int>("internal")) : linkItem.Value<string>("link");
                    bool newWindow = linkItem.Value<bool>("newWindow");
                    string linkText = linkItem.Value<string>("caption");
                    relatedLinksList.Add(new RelatedLink(linkText, linkUrl, newWindow));
                }
            }

            return relatedLinksList;



   }
   


}

方式2:  直接使用


以上是关于Umbraco中的RelatedLink的使用的主要内容,如果未能解决你的问题,请参考以下文章

Umbraco MediaService / Umbraco MediaItem 未保存

用 Umbraco 开发网站[1]:下载安装与初探

使用 OrchardCMS、Umbraco 或 DotNetNuke 作为 ASP.NET 应用程序中的组件

Umbraco -- 在Visual Studio中新建一个View 如何在Umbraco back office 中显示出来

Umbraco 的template使用的默认Model问题

我如何将umbraco 6 live site a迁移到visual studio中的第7版网站?