Sdílet prostřednictvím


ExpressionBuilder.EvaluateExpression Metoda

Definice

Při přepsání v odvozené třídě vrátí objekt, který představuje vyhodnocený výraz.

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

Parametry

target
Object

Objekt obsahující výraz.

entry
BoundPropertyEntry

Objekt, který představuje informace o vlastnosti vázané výrazem.

parsedData
Object

Objekt obsahující analyzovaná data vrácená objektem ParseExpression(String, Type, ExpressionBuilderContext).

context
ExpressionBuilderContext

Kontextové informace pro vyhodnocení výrazu

Návraty

Objekt, který představuje vyhodnocený výraz; jinak, null pokud děditel neimplementuje EvaluateExpression(Object, BoundPropertyEntry, Object, ExpressionBuilderContext).

Příklady

Následující příklad kódu ukazuje, jak použít přepsánou EvaluateExpression metodu k vrácení vyhodnoceného výrazu.

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

Poznámky

Pokud chcete, aby byl objekt ExpressionBuilder aktivní na stránce, která podporuje funkci bez kompilace, můžete přepsat EvaluateExpression metodu SupportsEvaluate a vlastnost. Metoda EvaluateExpression by měla vrátit vyhodnocení aktuálního výrazu.

Poznámky pro dědice

Pokud přepíšete metodu EvaluateExpression(Object, BoundPropertyEntry, Object, ExpressionBuilderContext) , musíte také přepsat SupportsEvaluate vlastnost.

Platí pro