Alles, bin ich mental geworden (das ist nicht die Frage). Ich möchte List<string[]>
in List<object[]>
Das funktioniert nicht, aber wenn ich etwas nicht vergessen habe, sollte eine Konvertierung mit dieser Methode möglich sein (kein Lambdas benötigt)?
Danke für Ihre Zeit.
OfType<string[]>
liefert eine IEnumerable<string[]>
, nicht eine List<object[]>
.
Enuemrable.OfType
filtert alle ungültigen Umwandlungen heraus. Sie können stattdessen Enumerable.Cast
berücksichtigen, was bei einem Fehler ausgelöst wird. Wenn string[]
nicht von object[]
erbt (ich erinnere mich ehrlich gesagt nicht), müssen Sie möglicherweise Enumerable.Select
aufrufen, um eine Konvertierung bereitzustellen.
Sie brauchen definitiv irgendwo einen Aufruf von Enumerable.ToList.
Aufgrund der Array-Kovarianz können Sie in .NET 4.0 einfach Folgendes tun:
%Vor%Beachten Sie jedoch, dass Sie diese Arrays nicht mit anderen als Strings mutieren können (da die Array-Kovarianz nicht wirklich sicher ist).
Wenn Sie wirklich flexible beschreibbare Objekt-Arrays möchten, können Sie Folgendes tun:
%Vor%(oder)
%Vor%Dann könntest du die Elemente jedes inneren Arrays durch Instanzen von fast jedem beliebigen Typ ersetzen.
Tags und Links c# type-conversion