public static string EvaluateOnUnassignmentExpression(this UserFlagAssignment ufa, DiscoDataContext Database, User RemovingUser, DateTime TimeStamp)
{
if (!string.IsNullOrEmpty(ufa.UserFlag.OnUnassignmentExpression))
{
Expression compiledExpression = ufa.UserFlag.OnUnassignmentExpressionFromCache();
IDictionary evaluatorVariables = Expression.StandardVariables(null, Database, RemovingUser, TimeStamp, null);
object result = compiledExpression.EvaluateFirst<object>(ufa, evaluatorVariables);
if (result == null)
return null;
else
return result.ToString();
}
return null;
}