示例#1
0
        public ActionResult TriggeringDynamicChange(TriggeringDynamicChangeViewModel model, string submitType)
        {
            if (submitType == "Change")
            {
                // Ignore model errors for this submit type
                ModelState.Clear();

                // Change which dynamic form to use based on UseAlternative
                model.MyDynamicProperty = model.FormToShow == "Bar" ? DynamicBar() : DynamicFoo();
            }
            else if (ModelState.IsValid)
            {
                model.Content.AddTitle("You submitted the following");

                var hours            = model.MyDynamicProperty.Get <int>("Hours");
                var provider         = model.MyDynamicProperty.Get <IEnumerable <SelectListItem> >("Provider");
                var selectedProvider = provider.FirstOrDefault(p => p.Selected);

                model.Content.AddParagraph("You agreed to work {0} voluntary hours", hours);
                model.Content.AddParagraph("With {0}", selectedProvider != null ? selectedProvider.Text : "no one");

                if (model.FormToShow == "Foo")
                {
                    var fromDate = model.MyDynamicProperty.Get <DateTime>("FromDate");
                    var toDate   = model.MyDynamicProperty.Get <DateTime>("ToDate");

                    model.Content.AddParagraph("From {0} to {1}", fromDate, toDate);
                }
            }

            return(View(model));
        }
示例#2
0
        public ActionResult TriggeringDynamicChange()
        {
            var model = new TriggeringDynamicChangeViewModel();

            model.MyDynamicProperty = DynamicFoo();

            return(View(model));
        }