/// <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(); }
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()); }