Laden...

Name der Klasse

Erstellt von Kuehner vor 17 Jahren Letzter Beitrag vor 17 Jahren 919 Views
K
Kuehner Themenstarter:in
489 Beiträge seit 2006
vor 17 Jahren
Name der Klasse

Hallo,

Einfache Frage: Wie kann ich den Namen der Klasse (ohne Namespace) eines Objektes heraus finden?

Mit object.GetType() bekomme ich immer noch den Namespace mit (Namespace.Klassenname).

Ansonsten benutze ich folgenden Code:


string fullType = device.GetType().ToString();
string type = fullType.Substring(fullType.LastIndexOf(".")+1, fullType.Length - fullType.LastIndexOf(".")-1);

Danke!

Q
214 Beiträge seit 2006
vor 17 Jahren

Hallo,
warum nicht den String anhand des Trennzeichen (.) trennen? Das letze Element ist dann der Klassenname.

Aber wozu brauchst du das?

In einer IF Anweisung kannst du z.B. schreiben:
if(obj is ClassA)
else if(obj is ClassB)
....

3.170 Beiträge seit 2006
vor 17 Jahren

Hallo,
außer stehen noch Type.Name und Type.FullName zur Verfügung.
Du könntest also

device.GetType().Name

für Deine Zwecke benutzen, beim FullName hängt der Namespace wieder vornedran.

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

K
Kuehner Themenstarter:in
489 Beiträge seit 2006
vor 17 Jahren

Hallo!

Vielen Dank! Wie gesagt... einfache Frage 😉 ... das ein Property hinter dem GetType() kommt hätte ich auch selbst wissen können.

Der Tip mit dem "is" findet bei mir keine Anwendung, da ich den string des Klassennamens brauche.