2016-09-21 6 views
0

Я новичок в Umbraco. У меня есть список элементов в содержании с именем Видео. Каждый предмет имеет определенную категорию. Мне нужно получить «n» количество элементов из каждой категории. Кто-нибудь, пожалуйста, помогите. Также я использую плагин jQuery MixItUp для отображения элементов.Нужно отображать первые n предметов из каждой категории в Razor с использованием Umbraco

// this will bring up all items from the list 
    var items = Umbraco.TypedContent(Model.Content.Id).Children.Where(x => x.DocumentTypeAlias == "videoItem" && x.IsVisible()); 

// Here am trying to bring 5 items under category "Testimonial" 

    var allItems = items.Where(x => x.GetPropertyValue("category") == "Testimonial").Take(5); 

Но я не нашел выхода. Пожалуйста помоги.

+0

Я исправил свою проблему. ему нужна кастинг. var allTestimonial = items.Where (x => (string) x.GetPropertyValue ("category") == "Отзыв"). Возьмите (5); –

ответ

0

Ваша вторая строка кода следует читать:

var allItems = items 
    .Where(x => x.GetPropertyValue<string>("category") == "Testimonial") 
    .Take(5); 

Вместо того, чтобы просто привести результат к строке, это будет пытаться преобразовать объект к нужному типу, если он еще не - see here.

Если вы используете новый ModelBuilder (который является удивительным), у вас также есть возможность строго набирать весь процесс.

var items = Model.Content.Children<VideoItem>().Where(x => x.IsVisible()); 

var allItems = items.Where(x => x.Category == "Testimonial").Take(5); 

 Смежные вопросы

  • Нет связанных вопросов^_^