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?