Hallo zusammen.
Ich habe in meinem Projekt folgende Funktion:
Diese Funktion habe ich jetzt mehrfach für verschiedene DatenTypen (GetNextDateTimeValue, GetNextDoubleValue, etc.)
Ich habe mir gedacht, ob man diese Funktion nicht durch Generics ersetzen könnte und habe versucht die Function
zu ersetzen.
Mein Problem ist jetzt, dass ich die Methode parse nicht auf T ausführen kann. An die Methode werden aber definitiv
nur Datentypen übergeben, die auch eine Parse-Methode besitzen.
Ich habe auch einen direkten Cast versucht [return (T)(lineParts[x]);], aber das läst der Compiler auch nicht zu.
Meine Frage ist nun, kann ich dieses Problem überhaupt mit Generics lösen oder sind Generics an dieser Stelle ungeeignet?
Grüße
Jörg
Ich habe in meinem Projekt folgende Funktion:
Code:
private static int GetNextIntValue(ref int i, string[] a) { for (int x = i + 1; ; x++) { if (!String.IsNullOrEmpty(a[x])) { i = x + 1; return int.Parse(a[x]); } } }
Ich habe mir gedacht, ob man diese Funktion nicht durch Generics ersetzen könnte und habe versucht die Function
zu ersetzen.
Code:
private static T GetNextValue<T>(ref int i, string[] a) { ... }
nur Datentypen übergeben, die auch eine Parse-Methode besitzen.
Ich habe auch einen direkten Cast versucht [return (T)(lineParts[x]);], aber das läst der Compiler auch nicht zu.
Meine Frage ist nun, kann ich dieses Problem überhaupt mit Generics lösen oder sind Generics an dieser Stelle ungeeignet?
Grüße
Jörg
Comment