private IEnumerable <QueueItemControlViewModel> ParseQueueItems(string queueItemsJSON)
        {
            try
            {
                var queueItems           = Newtonsoft.Json.JsonConvert.DeserializeObject <List <QueueItemControl> >(queueItemsJSON);
                var queueItemsViewModels = queueItems.Select(q => new QueueItemControlViewModel(q));
                return(queueItemsViewModels);
            }
            catch (Exception ex)
            {
                //var queuItem_01 = new QueueItemControl() { Key = "inputFilePath", Value = "Apple.xlsx", LabelText = "Input File Path", Type = Models.QUEUE_ITEM_TYPE.BROWSE_FILE, Filter = "Excel files (*.xlsx)|*.xlsx", Options = null };
                //var queuItem_02 = new QueueItemControl() { Key = "inputFilePath", Value = "Fruites\\Apple", LabelText = "Input Folder Path", Type = Models.QUEUE_ITEM_TYPE.BROWSE_FOLDER, Filter = string.Empty, Options = null };
                //var queuItem_03 = new QueueItemControl() { Key = "inputText", Value = "Banana", LabelText = "Input Value", Type = Models.QUEUE_ITEM_TYPE.TEXT_EDITOR, Filter = string.Empty, Options = null };
                //var queuItem_04 = new QueueItemControl() { Key = "inputOption", Value = "Orange", LabelText = "Input Option", Type = Models.QUEUE_ITEM_TYPE.COMBOBOX, Filter = string.Empty, Options = new string[] { "Apple", "Orange", "Banana" } };
                //var queueItems = new List<QueueItemControl>() { queuItem_01, queuItem_02, queuItem_03, queuItem_04 };

                var queuItem = new QueueItemControl()
                {
                    Key = "defaultText", Value = "", LabelText = ex.Message, Type = Models.QUEUE_ITEM_TYPE.DEFAULT, Filter = string.Empty, Options = null
                };
                var queueItems = new List <QueueItemControl>()
                {
                    queuItem
                };

                //var serializedQueueItems = Newtonsoft.Json.JsonConvert.SerializeObject(queueItems);

                var queueItemsViewModels = queueItems.Select(q => new QueueItemControlViewModel(q));
                return(queueItemsViewModels);
            }
        }
Пример #2
0
        public QueueItemControlViewModel(QueueItemControl queueItemControl)
        {
            if (queueItemControl == null)
            {
                throw new ArgumentNullException(nameof(queueItemControl));
            }

            this.Key       = queueItemControl.Key;
            this.Value     = queueItemControl.Value;
            this.Type      = queueItemControl.Type;
            this.LabelText = queueItemControl.LabelText;
            this.Filter    = queueItemControl.Filter;
            this.Options   = queueItemControl.Options;
        }