Generics und Generics in UserControls

03/08/2009 - 10:44 von Patrick Finger | Report spam
Hallo zusammen

Ich hab einen ziemlichen Knoten bei der Verwendung von Generics

Ich erhalte ein Objekt von dem ich den Typ nicht kenne. Möchte dann aber
eine Generic-List (etc) mit diesem Typ instanzieren.

zB:
object o = new Person();
Type t = o.GetType(); //t weiss dass es um eine Person geht

sowas:
List<t> genlist = new List<t>();
oder:
List<typeof(t)> = new List<typeof(t)>();

leider alles erfolglos...

einzig
List<Person> = new List<Person>()
funktioniert... aber ich weiss ja nicht dass es sich bei o um eine
Person handelt.




Alternativ:
Kann ich ein UserControl mit einem Typ belegen?
zB:

<%@ Control Language="C#" AutoEventWireup="true"
CodeBehind="MeinControl.ascx.cs"
Inherits="MeinControl" %>

public partial class MeinControl<T> : System.Web.UI.UserControl
{

}

Das kompiliert zwar, beim Ausführen erhalte ich aber den Fehler:
Der Typ "MeinControl" konnte nicht geladen werden.

Vielen Dank und Gruss
 

Lesen sie die antworten

#1 Peter Fleischer
03/08/2009 - 12:30 | Warnen spam
"Patrick Finger" schrieb im Newsbeitrag
news:h5681i$nhm$

Ich hab einen ziemlichen Knoten bei der Verwendung von Generics

Ich erhalte ein Objekt von dem ich den Typ nicht kenne. Möchte dann aber
eine Generic-List (etc) mit diesem Typ instanzieren.



Hi Patrick,
wenn du den Typ nicht kennst, wie soll ihn dann der Compiler erraten?

Wenn du den Typ erst zur Ausführungszeit festgelegt bekommst und generisch
programmieren willst, dann bleibt dir als Typ nur "object". Um das
Typcasting zur Ausführungszeit kommst du dann nicht umhin.

Was willst du eigentlich erreichen, zur Entwurfszeit und zur
Ausführungszeit?

Viele Grüsse
Peter

Ähnliche fragen