Ruft den Eigenschaftstyp über MemberExpression ab

Ich stelle ähnliche FragenHier , nimm diesen Typ an:

<code> public class Product {

public string Name { get; set; }
public string Title { get; set; }
public string Category { get; set; }
public bool IsAllowed { get; set; }

}
</code>

und dieses, das verwendetMemberExpression :

<code>public class HelperClass<T> {

    public static void Property<TProp>(Expression<Func<T, TProp>> expression) {

        var body = expression.Body as MemberExpression;

        if(body == null) throw new ArgumentException("'expression' should be a member expression");

        string propName = body.Member.Name;
        Type proptype = null;

    }

}
</code>

Ich benutze es so:

<code>HelperClass<Product>.Property(p => p.IsAllowed);
</code>

imHelperClass Ich brauche nur den Namen der Eigenschaft (in diesem BeispielIsAllowed) und Eigenschaftstyp (in diesem BeispielBoolean) Ich kann also den Namen der Eigenschaft abrufen, aber den Typ der Eigenschaft nicht. Ich sehe den Eigenschaftstyp beim Debuggen wie im folgenden Bild gezeigt:

Also, was ist Ihr Vorschlag, um Immobilientyp zu bekommen?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage