LibiadaWeb.Models.Repositories.Sequences.ElementRepository.GetSelectListItems C# (CSharp) Method

GetSelectListItems() public method

The get select list items.
public GetSelectListItems ( IEnumerable allElements, IEnumerable selectedElements ) : IEnumerable
allElements IEnumerable /// The all elements. ///
selectedElements IEnumerable /// The selected elements. ///
return IEnumerable
        public IEnumerable<SelectListItem> GetSelectListItems(
            IEnumerable<Element> allElements,
            IEnumerable<Element> selectedElements)
        {
            HashSet<long> elementIds = selectedElements != null
                                     ? new HashSet<long>(selectedElements.Select(c => c.Id))
                                     : new HashSet<long>();
            if (allElements == null)
            {
                allElements = db.Element;
            }

            var elementsList = new List<SelectListItem>();
            foreach (var element in allElements)
            {
                elementsList.Add(new SelectListItem
                    {
                        Value = element.Id.ToString(),
                        Text = element.Name,
                        Selected = elementIds.Contains(element.Id)
                    });
            }

            return elementsList;
        }