dedlfix: Generic

Beitrag lesen

Tach!

private void SetValue<T>(T myList) where T : List<T>

Was bitte bezweckst du denn damit? T darf nur eine Liste von sich selbst sein? Das heißt, alle Elemente sind wiederum Listen von Listen von Listen von ...?

items.AddRange(myList.Select(list => new SelectListItem {
                Text = list.ToString("dd.MM.yyyy"),
An dieser Stelle bekomme ich ein Problem mit "list.ToString("dd.MM.yyyy")", das besagt, dass die "ToString"-Methode 0 Parameter ertwartet und keinen 1.

List<T> erbt ToString() von Object und diese Methode erwartet keinen Parameter. Ein Item, das als "list" bezeichnet wird, ist auch seltsam. Aber gut, wenn es eine Liste von Listen von ... ist, dann stimmt das wieder.

Diese Signatur der Methode muss aber genau so sein wie oben beschrieben.

Das glaub ich nicht.

Kann man da was tun, damit diese Zeile "list.ToString("dd.MM.yyyy")" trotzdem funktioniert?

Du erwartest offensichtlich, dass list vom Typ DateTime ist. Das ist es aber nicht, sondern von einem Typ, der zu List<T> kompatibel ist. Das kann so nicht klappen.

dedlfix.