ExpressionBuilder.EvaluateExpression 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在派生类中重写时,返回一个表示计算表达式的对象。
public:
virtual System::Object ^ EvaluateExpression(System::Object ^ target, System::Web::UI::BoundPropertyEntry ^ entry, System::Object ^ parsedData, System::Web::Compilation::ExpressionBuilderContext ^ context);
public virtual object EvaluateExpression(object target, System.Web.UI.BoundPropertyEntry entry, object parsedData, System.Web.Compilation.ExpressionBuilderContext context);
abstract member EvaluateExpression : obj * System.Web.UI.BoundPropertyEntry * obj * System.Web.Compilation.ExpressionBuilderContext -> obj
override this.EvaluateExpression : obj * System.Web.UI.BoundPropertyEntry * obj * System.Web.Compilation.ExpressionBuilderContext -> obj
Public Overridable Function EvaluateExpression (target As Object, entry As BoundPropertyEntry, parsedData As Object, context As ExpressionBuilderContext) As Object
参数
- target
- Object
包含表达式的对象。
- entry
- BoundPropertyEntry
表示表达式绑定到的属性的相关信息的对象。
- parsedData
- Object
包含由 ParseExpression(String, Type, ExpressionBuilderContext). 返回的已分析数据的对象。
- context
- ExpressionBuilderContext
表达式计算的上下文信息。
返回
一个表示计算表达式的对象;否则, null 如果继承器未实现 EvaluateExpression(Object, BoundPropertyEntry, Object, ExpressionBuilderContext)。
示例
下面的代码示例演示如何使用重写 EvaluateExpression 的方法返回计算的表达式。
public override object EvaluateExpression(object target, BoundPropertyEntry entry,
object parsedData, ExpressionBuilderContext context)
{
return GetEvalData(entry.Expression, target.GetType(), entry.Name);
}
Public Overrides Function EvaluateExpression(ByVal target As Object, _
ByVal entry As BoundPropertyEntry, ByVal parsedData As Object, _
ByVal context As ExpressionBuilderContext) As Object
Return GetEvalData(entry.Expression, target.GetType(), entry.Name)
End Function
注解
如果希望对象 ExpressionBuilder 在支持无编译功能的页面上处于活动状态,则可以重写 EvaluateExpression 该方法和 SupportsEvaluate 属性。 该方法 EvaluateExpression 应返回当前表达式的计算。
继承者说明
如果重写该方法 EvaluateExpression(Object, BoundPropertyEntry, Object, ExpressionBuilderContext) ,则还必须重写 SupportsEvaluate 该属性。