Disco.Services.DocumentTemplatePackageExtensions.EvaluateOnGenerateExpression C# (CSharp) Method

EvaluateOnGenerateExpression() public static method

public static EvaluateOnGenerateExpression ( this package, object Data, DiscoDataContext Database, User User, System.DateTime TimeStamp, DocumentState State ) : string
package this
Data object
Database Disco.Data.Repository.DiscoDataContext
User Disco.Models.Repository.User
TimeStamp System.DateTime
State Disco.Models.Services.Documents.DocumentState
return string
        public static string EvaluateOnGenerateExpression(this DocumentTemplatePackage package, object Data, DiscoDataContext Database, User User, DateTime TimeStamp, DocumentState State)
        {
            if (!string.IsNullOrEmpty(package.OnGenerateExpression))
            {
                Expression compiledExpression = package.OnGenerateExpressionFromCache();
                System.Collections.IDictionary evaluatorVariables = Expression.StandardVariables(null, Database, User, TimeStamp, State);
                evaluatorVariables.Add("Package", package);
                try
                {
                    object result = compiledExpression.EvaluateFirst<object>(Data, evaluatorVariables);
                    return result.ToString();
                }
                catch
                {
                    throw;
                }
            }
            return null;
        }