public void CreateValue() { switch (Configuration.Type) { case DynamicFieldType.Integer: Value = new IntegerValue(); break; case DynamicFieldType.String: Value = new StringValue(); break; case DynamicFieldType.Bool: Value = new BoolValue(); break; case DynamicFieldType.Alphanumeric: Value = new StringValue(); break; case DynamicFieldType.DateTime: Value = new DateTimeValue(); break; case DynamicFieldType.Double: Value = new DoubleValue(); break; default: throw new IndexOutOfRangeException("Unexpected field type"); } }
public static DynamicFieldValue CreateField(string fieldName, string valuePropertyName = null, object value = null, string nameSuffix = null) { var field = new DynamicFieldValue { Id = fieldName + "Value" + (nameSuffix ?? ""), AssignmentId = fieldName + "Assignment" + (nameSuffix ?? "") }; if (!valuePropertyName.IsNullOrEmpty() && value != null) { typeof(DynamicFieldValue).GetProperty(valuePropertyName).SetValue(field, value); } return(field); }