/// <summary> /// Parse a query string /// </summary> /// <param name="reader">string to parse</param> /// <param name="parameters">Parameter collection to fill</param> /// <returns>A collection</returns> /// <exception cref="ArgumentNullException"><c>reader</c> is <c>null</c>.</exception> public void Parse(TextReader reader, IParameterCollection parameters) { if (reader == null) throw new ArgumentNullException("reader"); var canRun = true; while (canRun) { var result = reader.ReadToEnd("&="); var name = Uri.UnescapeDataString(result.Value); switch (result.Delimiter) { case '&': parameters.Add(name, string.Empty); break; case '=': result = reader.ReadToEnd("&"); parameters.Add(name, Uri.UnescapeDataString(result.Value)); break; case char.MinValue: // EOF = no delimiter && no value if (!string.IsNullOrEmpty(name)) parameters.Add(name, string.Empty); break; } canRun = result.Delimiter != char.MinValue; } }
/// <summary> /// Parse string /// </summary> /// <param name="value">contains "a=b,c=d" etc</param> /// <param name="target">Collection to fill with the values</param> public void Parse(string value, IParameterCollection target) { if (value == null) { throw new ArgumentNullException("value"); } if (target == null) { throw new ArgumentNullException("target"); } var index = 0; var lastCh = char.MinValue; var name = ""; var oldPos = 0; while (index < value.Length) { var ch = value[index]; switch (ch) { case '=': if (lastCh != '\\') { name = value.Substring(oldPos, index - oldPos).Trim(' '); oldPos = index + 1; } break; case ',': if (lastCh != '\\') { target.Add(name, value.Substring(oldPos, index - oldPos).Trim(' ', '"')); name = ""; oldPos = index + 1; } break; } lastCh = value[index]; ++index; } if (name != "") { target.Add(name, value.Substring(oldPos).Trim(' ', '"')); } }
public void Parse(string value, IParameterCollection target) { int index = 0; var lastCh = char.MinValue; var name = ""; int oldPos = 0; while (index < value.Length) { var ch = value[index]; switch (ch) { case '=': if (lastCh != '\\') { name = value.Substring(oldPos, index - oldPos).Trim(' '); oldPos = index + 1; } break; case ',': if (lastCh != '\\') { target.Add(name, value.Substring(oldPos, index - oldPos).Trim(' ', '"')); oldPos = index + 1; } break; } lastCh = value[index]; ++index; } }
public void Parse(string value, IParameterCollection target) { int index = 0; var lastCh = char.MinValue; var name = ""; int oldPos = 0; while (index < value.Length) { var ch = value[index]; switch (ch) { case '=': if (lastCh != '\\') { name = value.Substring(oldPos, index - oldPos).Trim(' '); oldPos = index + 1; } break; case ',': if (lastCh != '\\') { target.Add(name, value.Substring(oldPos, index - oldPos).Trim(' ', '"')); oldPos = index + 1; } break; } lastCh = value[index]; ++index; } }
/// <summary> /// Parse string /// </summary> /// <param name="value">contains "a=b,c=d" etc</param> /// <param name="target">Collection to fill with the values</param> public void Parse(string value, IParameterCollection target) { if (value == null) throw new ArgumentNullException("value"); if (target == null) throw new ArgumentNullException("target"); var index = 0; var lastCh = char.MinValue; var name = ""; var oldPos = 0; while (index < value.Length) { var ch = value[index]; switch (ch) { case '=': if (lastCh != '\\') { name = value.Substring(oldPos, index - oldPos).Trim(' '); oldPos = index + 1; } break; case ',': if (lastCh != '\\') { target.Add(name, value.Substring(oldPos, index - oldPos).Trim(' ', '"')); name = ""; oldPos = index + 1; } break; } lastCh = value[index]; ++index; } if (name != "") { target.Add(name, value.Substring(oldPos).Trim(' ', '"')); } }
public IParameterCollection GetViewParams(string cshtmlId) { string json_params = GetString(cshtmlId, false); IParameterCollection Params = Util.DeserializeParams(json_params); if (Params.Contains("cshtml")) { string view_name = GetViewName(Params["cshtml"].Value.ToString()); Params.Remove("cshtml"); Params.Add("view_name", view_name); } return(Params); }
/// <summary> /// Parse a query string /// </summary> /// <param name="reader">string to parse</param> /// <param name="parameters">Parameter collection to fill</param> /// <returns>A collection</returns> /// <exception cref="ArgumentNullException"><c>reader</c> is <c>null</c>.</exception> public void Parse(TextReader reader, IParameterCollection parameters) { if (reader == null) { throw new ArgumentNullException("reader"); } var canRun = true; while (canRun) { var result = reader.ReadToEnd("&="); var name = WebUtility.UrlDecode(result.Value); switch (result.Delimiter) { case '&': parameters.Add(name, string.Empty); break; case '=': result = reader.ReadToEnd("&"); parameters.Add(name, WebUtility.UrlDecode(result.Value)); break; case char.MinValue: // EOF = no delimiter && no value if (!string.IsNullOrEmpty(name)) { parameters.Add(name, string.Empty); } break; } canRun = result.Delimiter != char.MinValue; } }
/// <summary> /// Adds a parameter to the iCalendar object. /// </summary> public virtual void AddParameter(string name, string value) { var p = new CalendarParameter(name, value); Parameters.Add(p); }
/*----------------------------------------------------------------------------------------*/ #region Public Methods: Constructor Arguments /// <summary> /// Adds a transient value for the constructor argument with the specified name. /// </summary> /// <param name="name">The name of the argument.</param> /// <param name="value">The value to inject.</param> public ParameterCollectionBuilder ConstructorArgument(string name, object value) { _collection.Add(new ConstructorArgumentParameter(name, value)); return(this); }