Table of Contents

Class ReportExpressionEvaluator

Namespace
DocWright.Reporting.Expressions
Assembly
DocWright.Reporting.dll

Evaluates parsed report expressions.

public static class ReportExpressionEvaluator
Inheritance
ReportExpressionEvaluator
Inherited Members

Remarks

The result is a .NET value of the type Visual Basic would produce: Integer is int, Date is DateTime, Nothing is null, an array is an array. A Visual Basic enumeration value comes back as its int; a DayOfWeek or MidpointRounding comes back as that enumeration.

Failures. A run-time failure — the reference's #Error — raises ReportExpressionException with DXP9105. A missing name raises it with DXP9106, a bad scope with DXP9107, a page number outside pagination with DXP9104, custom code with no host with DXP9103. A budget raises ResourceLimitExceededException, which is never turned into #Error.

Nothing ambient is read: not the clock, not the thread's culture, not the environment. Evaluation is safe to run concurrently for different contexts, and for one context that nobody is writing to.

Methods

Evaluate(ReportExpression, ReportExpressionContext)

Evaluates an expression, or returns a literal's text.