Exemplo n.º 1
0
        public static ConfigInfoPC ConvertToConfigInfoPC(ConfigTemp model)
        {
            ConfigInfoPC configInfo = new ConfigInfoPC();

            Type ToModel = configInfo.GetType();
            Type FromModel = model.GetType();
            var fileds = ToModel.GetProperties();
            foreach (var item in fileds)
            {
                object fromValue = Convert.ChangeType(model.GetType().GetProperty(item.Name).GetValue(model, null), item.PropertyType);

                if (fromValue != null)
                {
                    configInfo.GetType().GetProperty(item.Name).SetValue(configInfo, fromValue, null);
                }
            }

            return configInfo;
        }
        public ActionResult SavePluginInfos(FormCollection form, ConfigTemp c, string IsAdd)
        {
            var vmobject = new JsonReturnMessages();
            IList<ConfigTemp> list = new List<ConfigTemp>();

            try
            {
                string[] keys = form.AllKeys;
                //��ȡ�б����
                for (int i = 0; i < keys.Length; i++)
                {
                    if (keys[i].EndsWith(".Key1"))
                    {
                        ConfigTemp config = new ConfigTemp();
                        string prefix = keys[i].Split('.')[0];
                        UpdateModel(config, prefix);  //��������ͬʱ���Ի������ʵ�����
                        config.PluginCode = Constants.UpdaterCode;
                        list.Add(config);
                    }
                }

                BoFactory.GetVersionTrackBo.UpdateUpdaterTempPlugin(list, base.CurrentUser.UserUId);
            }
            catch (Exception ex)
            {
                vmobject.IsSuccess = false;
                vmobject.Msg = ex.Message;
                return Json(vmobject);
            }

            vmobject.IsSuccess = true;
            vmobject.Msg = form["ver"].ToString();
            return Json(vmobject);
        }
        public ActionResult SavePluginInfos(PluginInfoTemp pt, FormCollection form, ConfigTemp c,string IsAdd)
        {
            var vmobject = new JsonReturnMessages();
            IList<PluginInfoTemp> listtemp = new List<PluginInfoTemp>();
            IList<ConfigTemp> list = new List<ConfigTemp>();
            string vids = "";

            try
            {
                string[] keys = form.AllKeys;
                //��ȡ����б�
                for (int i = 0; i < keys.Length; i++)
                {
                    if (keys[i].EndsWith(".PluginCode"))
                    {
                        PluginInfoTemp p = new PluginInfoTemp();
                        string prefix = keys[i].Split('.')[0];
                        UpdateModel(p, prefix);  //��������ͬʱ���Ի������ʵ�����
                        p.CompanyHomePage = pt.CompanyHomePage;
                        p.CompanyLinkman = pt.CompanyLinkman;
                        p.CompanyName = pt.CompanyName;
                        p.CompanyTel = pt.CompanyTel;
                        if (p.IsNeed == true)
                            p.IsDefault = true;
                        listtemp.Add(p);
                    }
                }
                //��ȡ�б����
                if (listtemp[0].IsIgnoreConfig == false)
                {
                    for (int i = 0; i < keys.Length; i++)
                    {
                        if (keys[i].EndsWith(".Key1"))
                        {
                            ConfigTemp config = new ConfigTemp();
                            string prefix = keys[i].Split('.')[0];
                            UpdateModel(config, prefix);  //��������ͬʱ���Ի������ʵ�����
                            config.PluginCode = prefix.Split('|')[0];
                            list.Add(config);
                        }
                    }
                }

                BoFactory.GetVersionTrackBo.UpdateTempPlugin(listtemp, list, IsAdd, base.CurrentUser.UserUId);
            }
            catch (Exception ex)
            {
                vmobject.IsSuccess = false;
                vmobject.Msg = ex.Message;
                return Json(vmobject);
            }
            //��ȡ��һ���汾����
            SearchVersionTrack sea = new SearchVersionTrack();
            sea.PluginCode = listtemp[0].PluginCode;
            sea.VersionName = listtemp[0].Version;
            vids = BoFactory.GetVersionTrackBo.GetVersionTrack(sea)[0].VersionId.ToString();//Ĭ��Ϊ��ǰ��ʱ���һ��
            foreach (PluginInfoTemp pti in listtemp)
            {
                SearchVersionTrack search = new SearchVersionTrack();
                search.PluginCode = pti.PluginCode.ToString();
                search.VersionName = pti.Version;
                VersionTrack vst = BoFactory.GetVersionTrackBo.GetVersionTrack(search)[0];
                if (vst.PreVersionId != 0)
                {
                    vids = vst.PreVersionId.ToString();//�����һ���汾�����޸�״̬ʱ��ֱ��ѡ�񷢲���õ�vidһ��Ϊ�ϸ��汾vid
                    break;
                }

            }
            vmobject.IsSuccess = true;
            vmobject.Msg = vids;
            return Json(vmobject);
        }