Czy Array.ToArray <> () zwraca oryginalną tablicę, jeśli jest tego samego typu?

Codziennie zajmuję się ramami, w których czasami dostarczamy metody, które akceptująIEnumerable<MyBusinessObject> jako parametr do wyświetlania interfejsów użytkownika, wykonywania obliczeń itp.

Jeśli przejdę w tablicyMyBusinessObject w ten sposób:

MyBusinessObject[] myArray = new MyBusinessObject { obj1, obj2, ..., objN };
frameworkClass.MyMethod(myArray);

....

public class FrameworkClass
{
    public void MyMethod(IEnumerable<MyBusinessObject> objs)
    {
        // Other code that uses the enumerable
        MyBusinessObject[] objectArray = objs.ToArray();            
        // More code that uses the enumerable
    }
}

Czy liniaobjs.ToArray() po prostu rozwińIEnumerable<MyBusinessObject> z powrotem do oryginalnej tablicy, czy też kopiuje ją do całej nowej tablicy, gotowej do użycia?

questionAnswers(1)

yourAnswerToTheQuestion