/// <summary> /// 添加属性 /// </summary> /// <param name="propertyValue">属性值</param> /// <param name="persistOriginal">是否保持原样</param> public void AddProperty(object propertyValue, bool persistOriginal) { if (propertyValue == null) { throw new ArgumentNullException(nameof(propertyValue)); } if (persistOriginal) { Properties.Add(propertyValue.ToString()); } else { if (propertyValue is string) { Properties.Add(JsHelper.Enquote(propertyValue.ToString())); } else if (propertyValue is bool) { Properties.Add(propertyValue.ToString().ToLower()); } else if (propertyValue is float || propertyValue is double) { Properties.Add(JsHelper.NumberToString(propertyValue)); } else { Properties.Add(propertyValue.ToString()); } } }
/// <summary> /// 添加属性 /// </summary> /// <param name="propertyName">属性名</param> /// <param name="propertyValue">属性值</param> /// <param name="persistOriginal">是否保持原样</param> public void AddProperty(string propertyName, object propertyValue, bool persistOriginal) { if (string.IsNullOrEmpty(propertyName)) { throw new ArgumentNullException(propertyName); } if (propertyValue == null) { throw new ArgumentNullException(nameof(propertyValue)); } RemoveProperty(propertyName); if (persistOriginal) { _properties.Add(propertyName, propertyValue.ToString()); } else { if (propertyValue is string) { _properties.Add(propertyName, JsHelper.Enquote(propertyValue.ToString())); } else if (propertyValue is bool) { _properties.Add(propertyName, propertyValue.ToString().ToLower()); } else if (propertyValue is float || propertyValue is double) { _properties.Add(propertyName, JsHelper.NumberToString(propertyValue)); } else { _properties.Add(propertyName, propertyValue.ToString()); } } }