Ejemplo n.º 1
0
        private List <SDK.Operation> CalculateSDKOperationList(List <SDK.Operation> srcList)
        {
            List <SDK.Operation> dstList  = new List <SDK.Operation>();
            ControlPanelManifest manifest = new ControlPanelManifest();
            var manifestOperationList     = manifest.GetOperationList();

            foreach (SDK.Operation operation in srcList)
            {
                operation.TargetCode = operation.TargetCode ?? "*";
                operation.Code       = operation.Code ?? "*";
                var bufferList = new List <SDK.Operation>();
                if (operation.TargetCode == "*" && operation.Code == "*")
                {
                    bufferList.AddRange(manifestOperationList);
                }
                else if (operation.TargetCode == "*" && operation.Code != "*")
                {
                    bufferList.AddRange(manifestOperationList
                                        .Where(op => op.Code == operation.Code)
                                        .ToList());
                }
                else if (operation.TargetCode != "*" && operation.Code == "*")
                {
                    bufferList.AddRange(manifestOperationList
                                        .Where(op => op.TargetCode == operation.TargetCode)
                                        .ToList());
                }
                else
                {
                    bufferList.Add(manifestOperationList
                                   .FirstOrDefault(op => op.TargetCode == operation.TargetCode &&
                                                   op.Code == operation.Code));
                }
                //如果计算结果不存在就把,原 “操作” 放入 buffer
                if (bufferList.Count < 1)
                {
                    bufferList.Add(operation);
                }
                dstList.AddRange(bufferList);
            }
            return(dstList);
        }
Ejemplo n.º 2
0
        protected void next_Click(object sender, EventArgs e)
        {
#if !DEBUG
            try
            {
#endif
            InstallContext.CreateDataRepo();
            ControlPanelManifest manifest = new ControlPanelManifest();
            InstallContext.InitData(manifest.ExportManifestText());
            this.InstallPage.NextStep();
#if !DEBUG
        }

        catch (Exception ex)
        {
            this.AjaxPage.PageEngine.ShowMessageBox(ex.Message);
            this.AjaxPage.PageEngine.UpdateControlRender(this);
        }
#endif
        }