Exemple #1
0
        static void reflect(IEnumerable <FileSettingText> configs)
        {
            Assembly[] AssembliesLoaded = AppDomain.CurrentDomain.GetAssemblies();


            foreach (FileSettingText config in configs)
            {
                foreach (InjectSettingText injSetting in config.InjectSettings)
                {
                    string path       = injSetting.Assembly;
                    var    assemblies = new Assembly[] { Assembly.LoadFile(path) };


                    iInjector injectObj = Global.getTypedObject <iInjector>(assemblies, injSetting.Injector);

                    if (injectObj == null)
                    {
                        Global.LogError("");
                        continue;
                    }



                    IEnumerable <string> aaa          = injSetting.Templates.Trim('[', ']').Split(',').Select(obj => obj.Trim());
                    List <iTemplate>     templateList = new List <iTemplate>();


                    foreach (string templates in aaa)
                    {
                        iTemplate template = Global.getTypedObject <iTemplate>(assemblies, templates);

                        if (template == null)
                        {
                            Global.LogError("");
                            continue;
                        }

                        templateList.Add(template);
                    }


                    iInitValue  initValue  = injectObj.getInitValue();
                    iInputValue inputValue = injectObj.getInputValue();

                    initValue.setValue(injSetting.InitValue);
                    inputValue.setValue(injSetting.InputValue);



                    Global.dicTemplates.Add(config.Name, templateList);
                    Global.dicInput.Add(config.Name, inputValue);
                    Global.dicInit.Add(config.Name, initValue);
                    Global.dicInject.Add(config.Name, injectObj);
                }


                Global.dicSetting.Add(config.Name, config);
            }
        }
Exemple #2
0
        public ActionResult CreateView(int tableid, string viewtype)
        {
            try
            {
                iTemplate template = null;
                switch (viewtype)
                {
                case "SINGLE_VIEW":
                    template = new SingleViewTemplate(tableid);
                    break;

                case "MASTER_DETAIL":
                    template = new MasterDetailViewTemplate(tableid);
                    break;

                case "MASTER_SIDE":
                    template = new MasterSideViewTemplate(tableid);
                    break;

                case "EDIT_ON_TABLE":
                    template = new EditOnTableTemplate(tableid);
                    break;
                }
                if (template == null)
                {
                    throw new Exception("not implement template [" + viewtype + "]");
                }
                template.CreateView(Server.MapPath(MyConfig.OutputTemplateFolder));

                return(Json(true));
            }
            catch (Exception ex)
            {
                return(Json("#error:" + ex.Message));
            }
        }