using System.Collections.Generic;
using System.Linq;
namespace Web.Utility.Extensions
{
public static class IEnumerableExtensions
{
public static IEnumerable<(T item, int index)> WithIndex<T>(this IEnumerable<T> self) => self?.Select((item, index) => (item, index)) ?? new List<(T, int)>();
}
}
foreach (var (item, index) in collection.WithIndex())
{
Debug.WriteLine($"{index}: {item}");
}