public FormProvider(IFormTypeProvider formTypeProvider, IFormCreator formCreator) { var forms = new Dictionary <Type, Form>(); foreach (var type in formTypeProvider.GetAll()) { forms[type] = formCreator.Create(type); } Forms = new ReadOnlyDictionary <Type, Form>(forms); }
//public static void AfterConstruction(IFormCreator form, IObjectSpace os) //{ // var fi = os.CreateObject<IBusinessObject>(); // fi.Bases.Add(os.FindObject<IBusinessObject>(new BinaryOperator("Name", "FormItemBase"))); // fi.Caption = "明细"; // form.FormItem = fi; //} //public static void AfterChange_Name(IFormCreator form) //{ // form.FormItem.Name = form.Name + "Item"; //} //public static void AfterChange_Caption(IFormCreator form) //{ // form.FormItem.Caption = form.Caption + "明细"; //} public static void Generate(IFormCreator form, IObjectSpace os) { //var bus = os.CreateObject<IBusinessObject>(); //bus.Name = form.Name; //bus.Caption = form.Caption; //var formitem = os.CreateObject<IListProperty>(); //formitem.Name = "Items"; //formitem.Caption = "明细"; //formitem.PropertyType = form.FormItem; //bus.Properties.Add(formitem); }
public static Form <THelper> Form <THelper>(this IFormCreator <THelper> creator, string action, string method = "post") where THelper : BootstrapHelper <THelper> { return(new Form <THelper>(creator).SetAction(action).SetMethod(method)); }
public static Form <MvcBootstrapHelper <TModel> > Form <TModel>(this IFormCreator <MvcBootstrapHelper <TModel> > creator, string action, FormMethod method) { return(new Form <MvcBootstrapHelper <TModel> >(creator).SetAction(action).SetFormMethod(method)); }
public static Form <MvcBootstrapHelper <TModel> > Form <TModel>(this IFormCreator <MvcBootstrapHelper <TModel> > creator, string actionName, string controllerName, FormMethod method = FormMethod.Post, object routeValues = null) { return(new Form <MvcBootstrapHelper <TModel> >(creator).SetAction(actionName, controllerName, routeValues).SetFormMethod(method)); }
public FormFieldProvider(IFormCreator formCreator) { FormFieldsByFormId = new ReadOnlyDictionary <string, IEnumerable <FormField> >(formCreator.Create().ToDictionary(f => f.Id, f => f.Fields)); }