private object GetDefaultValue(ColumnInfo columnInfo) { if (columnInfo.DefaultValue != null && CremaDataTypeUtility.IsBaseType(columnInfo.DataType) == true) { var type = CremaDataTypeUtility.GetType(columnInfo.DataType); return(CremaConvert.ChangeType(columnInfo.DefaultValue, type)); } return(columnInfo.DefaultValue); }
protected virtual void OnValidateSetDataTypeName(string value) { var dataSet = this.Table?.DataSet; if (value == null) { throw new ArgumentNullException(nameof(value)); } if (value is string == false) { throw new ArgumentException(nameof(value)); } if (dataSet == null && CremaDataTypeUtility.IsBaseType(value) == false) { if (NameValidator.VerifyItemPath(value) == false) { throw new ArgumentException(string.Format(Resources.Exception_TypeCannotBeUsed_Format, value), nameof(value)); } } if (CremaDataTypeUtility.IsBaseType(value) == true) { this.OnValidateSetDataType(CremaDataTypeUtility.GetType(value)); } if (dataSet != null && CremaDataTypeUtility.IsBaseType(value) == false) { if (NameValidator.VerifyItemPath(value) == false) { if (InternalDataSet.ContainsType(this.Table?.DataSet, value) == false) { throw new ArgumentException(string.Format(Resources.Exception_TypeCannotBeUsed_Format, value), nameof(value)); } var dataType = InternalDataSet.GetType(this.Table?.DataSet, value); this.OnValidateSetCremaType(dataType); } else { var itemName = new ItemName(value); if (InternalDataSet.ContainsType(this.Table?.DataSet, itemName.Name, itemName.CategoryPath) == false) { throw new ArgumentException(string.Format(Resources.Exception_TypeCannotBeUsed_Format, value), nameof(value)); } var dataType = InternalDataSet.GetType(this.Table?.DataSet, itemName.Name, itemName.CategoryPath); this.OnValidateSetCremaType(dataType); } } }