Create Func, um sowohl Referenz- als auch Werttypen zurückzugeben

Ich habe eine Methode, die ein @ zurückgiFunc<object> wird wie folgt durch einen Ausdruck gebildet:

var expr = Expression.Property(
        Expressions.Expression.Constant(new Foo { Name = "Hans", Age = 3 }, typeof(Foo)), 
        "Age");
var f = Expression.Lambda<Func<object>>(expr).Compile();

Dieser Ausdruck sollte das @ zurückgebAge -Eigenschaft dieses DummysFoo-Objekt. Das Problem ist, dass, wie ich ein @ zurückgeben möchFunc<object> anstelle einerFunc<int> Ich bekomme ein

ArgumentException: Ein Ausdruck vom TypSystem.Int32 kann nicht als Rückgabetyp @ verwendet werdSystem.Object. (oder ähnliches, habe deutsche version).

Wenn ich das @ gewählt hätName -Eigenschaft anstelle desAge -property das gleiche funktioniert. Ich weiß, das hat mit Boxen und Unboxing als @ zu tint verlängert nichtobject.

Wie kann ich die entsprechende Funktion zurückgeben, die eine value-type-Eigenschaft darstellt?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage