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?