예제 #1
0
        public FormMode ModeFor(BehaviorChain chain)
        {
            var call = chain.FirstCall();

            if (call == null || call.HasAttribute <NoFormModeAttribute>())
            {
                return(FormMode.None);
            }

            if (call.HasInput && call.InputType().HasAttribute <NoFormModeAttribute>())
            {
                return(FormMode.None);
            }

            var policy = policyFor(chain) ?? FormModePolicy.Default();

            return(policy.ModeFor(chain));
        }
예제 #2
0
 protected void addPolicy(FormModePolicy policy)
 {
     _policies.Add(policy);
 }
예제 #3
0
 public FormRegistry(IEnumerable <FormModePolicy> policies)
 {
     _policies.Add(FormModePolicy.Ajax());
     _policies.AddRange(policies);
 }