public DbParameter CreateParameter(DbField field, object value) { DbParameter p = CreateParameter(field.FieldName, value); p.DbType = field.DbType; if (field.ProviderType >= 0) { string pName = DbMetadata.ParameterTypeName; if (!String.IsNullOrEmpty(pName)) { Type t = p.GetType(); PropertyInfo pi = t.GetProperty(pName); pi.SetValue(p, field.ProviderType, null); } } //SetParameterValue(p, value); return p; }
public int IndexOf(DbField value) { return IndexOf(value.FieldName); }
public bool Contains(DbField value) { return (List.Contains(value)); }
public int Add(DbField value) { return (List.Add(value)); }
public void Remove(DbField value) { List.Remove(value); }
public void Insert(int index, DbField value) { List.Insert(index, value); }
public static DbField Create(DataRow dr) { DbField f = new DbField(); f.FieldName = GetValue(dr, "ColumnName").IfNull(String.Empty); f.DataType = GetValue(dr, "DataType").IfNull("System.String"); f.DetectDbType(); f.ProviderType = GetValue(dr, "ProviderType").IfNull(-1); f.DefaultValue = GetValue(dr, "DefaultValue"); f.FieldOrdinal = GetValue(dr, "ColumnOrdinal").IfNull(0); f._length = GetValue(dr, "ColumnSize").IfNull(0); f._precision = (short)GetValue(dr, "NumericPrecision").IfNull(0); f._scale = (short)GetValue(dr, "NumericScale").IfNull(0); f._notNull = !(GetValue(dr, "AllowDBNull").IfNull(true)); f.IsLong = GetValue(dr, "IsLong").IfNull(false); f.IsReadOnly = GetValue(dr, "IsReadOnly").IfNull(false); f.IsRowVersion = GetValue(dr, "IsRowVersion").IfNull(false); f.IsUnique = GetValue(dr, "IsUnique").IfNull(false); f.IsKey = GetValue(dr, "IsKey").IfNull(false); f.IsAutoIncrement = GetValue(dr, "IsAutoIncrement").IfNull(false); f.BaseSchemaName = GetValue(dr, "BaseSchemaName").IfNull(String.Empty); f.BaseCatalogName = GetValue(dr, "BaseCatalogName").IfNull(String.Empty); f.BaseTableName = GetValue(dr, "BaseTableName").IfNull(String.Empty); f.BaseFieldName = GetValue(dr, "BaseColumnName").IfNull(String.Empty); return f; }