我需要实现自己的ExpressionBuilder。我知道如何实现GetCodeExpression(),所以我可以在标记中实现:<%$ OwnBuilder: MyMethod(param) %>
但是现在我还需要实现EvaluateExpression来返回我自己的方法的结果(来做一些类似<%$ OwnBuilder: param %>的事情。应该如何实现EvaluateExpression方法?就像这样??:
public override object EvaluateExpression(object target, BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
{
return OwnExpressionBuilderPrivateMethod(entry.Expression);
}那么GetCodeExpression()又如何呢?
非常感谢。
发布于 2009-11-09 09:24:55
当CompilationMode设置为“”Never“”并且ExpressionBuilder通过重写SupportsEvaluate属性(并返回“”true“”)来支持计算时,使用SupportsEvaluate方法。“”
如果您不打算支持这些未编译的页面,那么默认情况下SupportsEvaluate将返回false,因此只需实现一个返回null的EvaluateExpression方法即可。
在我们的ExpressionBuilder实现中,我们使用GetCodeExpression方法支持<%$ OwnBuilder: param %>类型的表达式。
https://stackoverflow.com/questions/1695051
复制相似问题