リストの中身をシャッフルする。(C#)

public static List<T> GetShuffledList<T>(this List<T> list)
{
    return list.OrderBy(_ => Guid.NewGuid()).ToList();
}


NewGuid()でランダムなGUIDを作成して、それをOrderByすることで、Listの中身をランダムに再配置する。
docs.microsoft.com

カードゲームでバトル開始時にデッキの中身をシャッフルする必要があったため、Listの拡張メソッドとして実装。