下面的代码适用于原始表达式(这并不奇怪)
public class SiteContextExpressionBuilder : ExpressionBuilder {
public override CodeExpression GetCodeExpression(BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context) {
PropertyInfo property = typeof(SiteContext).GetProperty(entry.Expression);
return new CodePrimitiveExpression(property.GetValue(null, null)));
}
}
现在我也想返回非原始类型。假设一个公司对象。
这是如何运作的?我似乎找不到任何好的例子。
无效的原始类型:...考虑使用 CodeObjectCreateExpression
如何实现 CodeObjectCreateExpression 或替代方案?