Compara si dos secuencias son iguales

Antes de marcar esto como duplicado debido a su título, considere el siguiente programa corto:

static void Main()
{
    var expected = new List<long[]> { new[] { Convert.ToInt64(1), Convert.ToInt64(999999) } };
    var actual = DoSomething();
    if (!actual.SequenceEqual(expected)) throw new Exception();
}

static IEnumerable<long[]> DoSomething()
{
    yield return new[] { Convert.ToInt64(1), Convert.ToInt64(999999) };
}

Tengo un método que devuelve una secuencia de matrices de tipo largo. Para probarlo, escribí un código de prueba similar a ese dentro deMain.

Sin embargo, recibo la excepción, pero no sé por qué. ¿No debería ser la secuencia esperada comparable a la realmente devuelta o me perdí algo?

Para mí, parece tanto el método como elepxected contiene exactamente un solo elemento que contiene una matriz de tipo largo, ¿no?

EDITAR: Entonces, ¿cómo puedo lograr no obtener el significado de excepción para comparar los elementos dentro de la enumeración para devolver la igualdad?

Respuestas a la pregunta(3)

Su respuesta a la pregunta