示例#1
0
        private static void AddValue(object sender, MsgHandlerEventArgs e)
        {
            _log.LogInfo(DateTime.Now.TimeOfDay.ToString());
            var message = MessageSerializer.Deserializer <AddValueCommand>(e.Message.Data);

            var value = message.Value;

            var optionsBuilder = new DbContextOptionsBuilder <TemplateContext>();

            optionsBuilder.UseSqlServer(Config.CONNECTION_STRING);
            try {
                using (var context = new TemplateContext(optionsBuilder.Options)) {
                    _valueRepository = new ValueRepository(context, _log);
                    var valueToInsert = new Value()
                    {
                        Description = value
                    };
                    var insertTask = _valueRepository.InsertAsync(valueToInsert);
                    insertTask.Wait();
                    if (insertTask.IsCompletedSuccessfully)
                    {
                        _log.LogInfo($"Processed message: {message.CorrelationId} at {DateTime.Now.TimeOfDay}");
                    }
                    else
                    {
                        _log.LogInfo($"Failed to process message: {message.CorrelationId} with value: {value}");
                    }
                }
            } catch (Exception ex) {
                _log.LogInfo(ex.Message);
                _log.LogInfo(ex.StackTrace);
            }
        }
示例#2
0
        // Estabelece comunicacao entre o usuario e o SimpleBotUser
        async Task HandleActivityAsync(Activity activity)
        {
            string text         = activity.Text;
            string userFromId   = activity.From.Id;
            string userFromName = activity.From.Name;

            var message = new SimpleMessage(userFromId, userFromName, text);

            string response = _bot.Reply(message);
            await _values.InsertAsync(message);

            await ReplyUserAsync(activity, response);
        }