public class Foo
{
public string Bar {get; set;}
}
Wie bekomme ich den Wert von Bar, eine String-Eigenschaft, über Reflexion? Der folgende Code wird eine Ausnahme ausgelöst, wenn die Propertyinfo Typ ein System.String istWie kann ich den Wert einer String-Eigenschaft über Reflection erhalten?
Foo f = new Foo();
f.Bar = "Jon Skeet is god.";
foreach(var property in f.GetType().GetProperties())
{
object o = property.GetValue(f,null); //throws exception TargetParameterCountException for String type
}
Es scheint, dass mein Problem ist, dass das Eigentum ist ein Indexer-Typ, mit einem System.String.
Wie kann ich feststellen, ob die Eigenschaft ein Indexer ist?
funktioniert gut hier ... ist etwas anderes los? – womp
scheint, als würden Sie nicht genügend Kontext-Code posten? – Firoso
Ja. Der Debugger sagt, dass der zugrunde liegende Typ String ist, aber ich vermute, dass etwas anderes vor sich geht. – Alan