Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Claushingebjerg 886 posts 2415 karma points
    Jun 22, 2017 @ 13:02
    Claushingebjerg
    0

    Getting random items

    I need to pull x random items from nested content. If i were to do it on nodes i would do:

    @foreach(var t in Umbraco.Content(1056).Children().Random(2))
    {
      <p>@t.Name</p>
    }
    

    Which works fine. In nested content context i tried doing:

    @{
        var items = Model.GetPropertyValue<IEnumerable<IPublishedContent>>("sponsorer");
        foreach(var item in items.Random(2)) {
        <p>@item.GetPropertyValue("name")</p>
        }
    }
    

    but them i get an error "CS1061: 'System.Collections.Generic.IEnumerable

  • Alex Skrypnyk 5908 posts 22603 karma points MVP 4x admin c-trib
    Jun 22, 2017 @ 15:21
    Alex Skrypnyk
    2

    Hi Claushingebjerg

    This code should work for you:

    foreach(var item in items.OrderBy(n => Guid.NewGuid()).Take(2)) 
    

    Hope it will help.

    Alex

  • Yakov Lebski 427 posts 1654 karma points
    Jun 22, 2017 @ 15:56
    Yakov Lebski
    102

    you can use this one

    items.RandomOrder();
    
  • Alex Skrypnyk 5908 posts 22603 karma points MVP 4x admin c-trib
    Jun 22, 2017 @ 16:31
    Alex Skrypnyk
    0

    Exactly, thanks Yakov, it's definitely the best method.

  • This forum is in read-only mode while we transition to the new forum.

    You can continue this topic on the new forum by tapping the "Continue discussion" link below.

Please Sign in or register to post replies