Sitecore 8 простой способ получить товар по внутренней ссылке?

У меня есть несколько Общих полей ссылок, которые используются как внутренние ссылки, так что это элемент Sitecore.

Мне нужны эти "целевые" элементы в моем коде, и я чувствую, что делаю это ужасно сложным способом:

LinkField lf = myItem.Fields["My Link"];
if (lf != null)
{
    if (lf.Value != null)
    {
        ID targetID;
        if (ID.TryParse(lf.Value, out targetID))
        {
            Item targetItem = Sitecore.Context.Database.GetItem(targetID);
            {
                if (targetItem != null)
                {
                    // go on with code
                }
            }
        }
    }
}

Кто-нибудь знает более простой способ получить этот целевой предмет?

С уважением

1 ответ

Решение

Ты можешь использовать TargetItem собственность LinkField без пользовательского кода:

Item targetItem;

LinkField linkField = myItem.Fields["My Link"];
if (linkField != null && linkField.IsInternal)
{
    targetItem = linkField.TargetItem;
}
Другие вопросы по тегам