public void OnProvidersExecuting(ActionConstraintProviderContext context) { foreach (var item in context.Results) { var marker = item.Metadata as BooleanConstraintMarker; if (marker != null) { Assert.Null(item.Constraint); item.Constraint = new BooleanConstraint() { Pass = marker.Pass }; } } }
private IReadOnlyList <IActionConstraint> GetConstraints(ActionDescriptor action) { if (action.ActionConstraints == null || action.ActionConstraints.Count == 0) { return(null); } var items = action.ActionConstraints.Select(c => new ActionConstraintItem(c)).ToList(); var context = new ActionConstraintProviderContext(action, items); _actionConstraintProvider.Invoke(context); return (context.Results .Where(item => item.Constraint != null) .Select(item => item.Constraint) .ToList()); }
public void OnProvidersExecuted(ActionConstraintProviderContext context) { }