public static object ConvertAttributeValue(AttributeValueTypes attributeValueTypes, object value) { if (value == null) { return(null); } switch (attributeValueTypes) { case AttributeValueTypes.String: if (value is string) { return(value); } return(value.ToString()); case AttributeValueTypes.Double: if (value is double) { return(value); } if (double.TryParse(value.ToString(), out double doubleResult)) { return(doubleResult); } break; case AttributeValueTypes.Boolean: if (value is bool) { return(value); } if (bool.TryParse(value.ToString(), out bool boolResult)) { return(boolResult); } break; case AttributeValueTypes.Int: if (value is int) { return(value); } if (int.TryParse(value.ToString(), out int intResult)) { return(intResult); } break; case AttributeValueTypes.DateTime: value = Convert.ToDateTime(value); break; } return(value); }
public void SetAttributeValue(string attributeName, AttributeValueTypes attributeValueTypes, object attributeValue) { _attributes[attributeName] = ConvertAttributeValue(attributeValueTypes, attributeValue); }