Zum Inhalt springen

Generischer Typparameter zur Laufzeit übergeben


Empfohlene Beiträge

Geschrieben

Hallo.

Wie kann ich einen generischen Typparameter zur Laufzeit übergeben?

z.B.


            string s = "";

            Type t = s.GetType();

            List<t> l = new List<t>();

Oder vllt wisst ihr was besseres: Ich habe ein DataRowArray und möchte das via Linq per Benuzedialog (Spalte und Sortierrichtung) sortieren lassen:


var sortedItems = from item in items orderby item.DataRow.Field<t>(e.SortColumn) descending select item;


Das Problem ist, ich muss dem übergeben welcher Typ diese Spalte ist.

Danke!!!

Geschrieben


public void MyMethod<GenericParameter>()

{

            string s = "";

            Type t = s.GetType();

            List<GenericParameter> l = new List<GenericParameter>();

}

Das Problem wieder hierbei, Ich übergebe MyMethod einen Generischen Paramater. Da kann ich nicht den Paramater zur Laufzeit übergeben. Das muss im Kompiler festgelegt sein, dass entweder int, string, etc. gesetzt wird. Ich seh das ungefähir so

            Type t = // Ich ermittel hier anhand eines Strings einen Datentyp


            List<t> l = new List<t>();


---------------- Code in der Theorie!! So SOLLTE es sein. In der praxis funktioniert das nicht 

[/code]

Dieser Datentyp kann zur laufzeit mal String, mal int, mal DateTime sein. Ich weiss es nicht.

P.S. Danke für die MSDN Seite, jedoch hat die mir nicht weitergeholfen :(

Gruß

  • 2 Wochen später...
Geschrieben

Moin,

wenn ich dich richtig verstehe ist es doch nichts weiter wie das:

public void blubb<T>()

{

List<T> x = new List<T>();

}

Dann rufst du die Funktion einfach auf mit:

blubb<int>();

blubb<string>();

--> dazu würd ich den Objekttyp per reflexion übergeben.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...