Example #1
0
 /// <summary>
 /// Initializes a new formatter.
 /// </summary>
 /// <param name="variables">A variable dictionary in which <see cref="FormatVariableElement"/>s are looked up.</param>
 /// <param name="conditions">A condition dictionary in which <see cref="FormatConditionElement"/>s are looked up.</param>
 /// <param name="functions">A function dictionary in which <see cref="FormatFunctionElement"/>s are looked up.</param>
 public Formatter(
     IImmutableDictionary <string, Variable <T> > variables,
     IImmutableDictionary <string, Condition <T> > conditions,
     IImmutableDictionary <string, Function <T> > functions)
 {
     _variablesExtractor = new VariablesExtractor();
     _variables          = variables ?? throw new ArgumentNullException(nameof(variables));
     _conditions         = conditions ?? throw new ArgumentNullException(nameof(conditions));
     _functions          = functions ?? throw new ArgumentNullException(nameof(functions));
 }
        public void AddMessageFromFormData(string content)
        {
            IDictionary <string, string> formDataVariables = VariablesExtractor.ExtractVariables(content);
            Message message = new Message()
            {
                MessageText = formDataVariables["message"],
                Sender      = formDataVariables["email"],
                Subject     = formDataVariables["subject"]
            };

            this.context.Messages.Add(message);
            this.context.SaveChanges();
        }
Example #3
0
        public IList <Knive> GetKnivesByNamesFromUrl(string url)
        {
            int variableSeparatorIndex = url.IndexOf('?');

            if (variableSeparatorIndex != -1)
            {
                string queryString = url.Substring(variableSeparatorIndex + 1);
                IDictionary <string, string> variables = VariablesExtractor.ExtractVariables(queryString);
                var knifeName = variables["product-name"];
                return(this.context.Knives.Where(knive => knive.Name.Contains(knifeName)).ToList());
            }

            return(this.context.Knives.ToList());
        }