483 Stimmen

Übergabe von Argumenten an die generische C#-Funktion new() vom Schablonentyp

Ich versuche, ein neues Objekt des Typs T über seinen Konstruktor zu erstellen, wenn ich es der Liste hinzufüge.

Ich erhalte einen Kompilierfehler: Die Fehlermeldung lautet:

T': kann keine Argumente angeben, wenn eine Instanz einer Variablen erzeugt wird

Aber meine Klassen haben ein Konstruktorargument! Wie kann ich das zum Laufen bringen?

public static string GetAllItems<T>(...) where T : new()
{
   ...
   List<T> tabListItems = new List<T>();
   foreach (ListItem listItem in listCollection) 
   {
       tabListItems.Add(new T(listItem)); // error here.
   } 
   ...
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X