Example #1
0
        private void SaveRecordToDatabase(QueueMessage record)
        {
            var metaData = _context.MetaData
                           .OrderByDescending(m => m.Version)
                           .First();

            var action = metaData.ActionInfo
                         .Where(a => a.ActionName == record.ActionName)
                         .Where(a => a.ControllerName == record.ControllerName)
                         .Where(a => ParameterBasicInfo.AreTheSame(record.ParameterInfo, a.ParameterInfo))
                         .FirstOrDefault();

            if (action == null)
            {
                return;
            }

            if (action.CallRecords == null)
            {
                action.CallRecords = new List <DetailRecord>();
            }

            action.CallRecords.Add(new DetailRecord
            {
                CustomValues = record.CustomValues,
                UserName     = record.UserName,
                TimeStamp    = record.TimeStamp
            });
            _context.SaveChanges();

            if (_showConsole)
            {
                Console.WriteLine("Wrote a message:" + JsonConvert.SerializeObject(record));
            }
        }
Example #2
0
        public void Handle(CommandAddRecord command)
        {
            var metaData = _context.MetaData
                           .OrderByDescending(m => m.Version)
                           .First();

            var action = metaData.ActionInfo
                         .Where(a => a.ActionName == command.ActionName)
                         .Where(a => a.ControllerName == command.ControllerName)
                         .Where(a => ParameterBasicInfo.AreTheSame(command.ParameterInfo, a.ParameterInfo))
                         .First();

            if (action.CallRecords == null)
            {
                action.CallRecords = new List <DetailRecord>();
            }

            action.CallRecords.Add(new DetailRecord
            {
                CustomValues = command.CustomValues,
                UserName     = command.UserName,
                TimeStamp    = command.TimeStamp
            });
            _context.SaveChanges();
        }
Example #3
0
        public void Handle(CommandMapFeature command)
        {
            var meta = _context.MetaData
                       .OrderByDescending(m => m.Version)
                       .FirstOrDefault();

            if (meta == null)
            {
                throw new Exception("Load the meta data first!");
            }

            var actionInfo = meta
                             .ActionInfo
                             .Where(a => a.ControllerName == command.ControllerName)
                             .Where(a => a.ActionName == command.ActionName)
                             .Where(a => ParameterBasicInfo.AreTheSame(a.ParameterInfo, command.ParameterBasicInfos))
                             .SingleOrDefault();

            if (actionInfo == null)
            {
                throw new Exception(string.Format("Action not found. Meta data need reloaded? [{0},{1},{2}]",
                                                  command.ControllerName,
                                                  command.ActionName,
                                                  string.Join("|", command.ParameterBasicInfos.Select(p => p.ParameterTypeFullName + " " + p.ParameterName))));
            }

            actionInfo.Feature = command.FeatureName;
            _context.SaveChanges();
        }