Umbraco 5 Очень простой - Как загрузить сущность в макрос (или фактически используя HiveId)?
Я создал свое первое пользовательское решение Umbraco 5.1. На данный момент у меня есть элемент контента ("домашняя страница") с пользовательским шаблоном, в котором есть собственный частичный макрос. Теперь, как мне загрузить объект, используя Umbraco
помощник? Я пытался добавить несколько HiveId
конструкции с использованием Uri
Однако я продолжаю получать ту же ошибку:
Параметр "other" должен иметь тип Guid для преобразования в тип Guid CLR, но это "Uri" со значением: xxx
Частичный макрос:
@inherits PartialViewMacroPage @using Umbraco.Cms.Web @using Umbraco.Cms.Web.Macros @using Umbraco.Framework @ { // Все они терпят неудачу с тем же сообщением об ошибке... // На основании имени: var p = Umbraco.GetContentById(новый HiveId(новый Uri("content://Homepage"))); // На основе пути var p = Umbraco.GetContentById (новый HiveId(новый Uri("content://p__nhibernate/v__guid/5a4abe489a2e47858bd2a0580180b683"))); // С пользовательским провайдером Hive (я добавил это, используя пользовательское дерево / раздел, и продукты отображаются, поэтому провайдер Hive работает) var p = Umbraco.GetContentById(новый HiveId(новый Uri("custom://products/1"))); }
1 ответ
Почему ты создаешь Ури? HiveId
принимает строковый параметр, который вы можете использовать вместо. Так же Umbraco.GetContentById(string id)
Я сертифицирован Umbraco 5 и мы никогда не пользовались Uri
перегрузка HiveId
конструктор.
var p = Umbraco.GetContentById("yourStringHiveIdHere"); //(string overload) or
var p = Umbraco.GetContentById(new HiveId("yourSringHiveIdHere")); // (HiveId overload)
Кроме того, откуда вы получаете свой HiveId?