public void ColumnMigratorInfo_ShouldBeIgnored() { var member = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.ShouldBeIgnored)); var memberInfo = ColumnMigratorInfo.FromMemberInfo(member); Assert.IsNull(memberInfo); }
public void ColumnMigratorInfo_ResultColumn() { var member = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.Result)); var memberInfo = ColumnMigratorInfo.FromMemberInfo(member); Assert.IsNull(memberInfo); }
protected virtual string formatColumn(TableMigratorInfo table, ColumnMigratorInfo column) { var isPrimaryKeyKeywordInline = shouldFormatPrimaryKeyInlinse(table); var columnDbTypeString = formatColumnDataTypeString(column.Type, column.DbTypeParameter); var isPrimaryKey = table.PrimaryKey?.Split(',')?.Contains(column.ColumnName, new StringComparer()) ?? false; StringBuilder builder = new StringBuilder(databaseType.EscapeSqlIdentifier(column.ColumnName)); builder.Append(" "); builder.Append(columnDbTypeString); builder.Append(" "); builder.Append(column.AllowNull ? "NULL" : "NOT NULL"); if (isPrimaryKey) { if (isPrimaryKeyKeywordInline) { builder.Append(" PRIMARY KEY"); } if (table.AutoIncrement) { builder.Append(" "); builder.Append(formatAutoIncrement()); } } return(builder.ToString()); }
public void ColumnMigratorInfo_ShouldBeRenamed() { var member = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.ShouldBeRenamed)); var memberInfo = ColumnMigratorInfo.FromMemberInfo(member); Assert.IsNotNull(memberInfo); Assert.AreEqual("RenamedColumn", memberInfo.ColumnName); }
public void ColumnMigratorInfo_ComputedColumn() { var member = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.Computed)); var memberInfo = ColumnMigratorInfo.FromMemberInfo(member); Assert.IsNotNull(memberInfo); Assert.AreEqual("Computed", memberInfo.ColumnName); }
public ICreateTableColumnQueryProvider <T> AddColumn <TMember>(Expression <Func <T, TMember> > memberExpression) { var member = memberExpression.GetMember(); var column = ColumnMigratorInfo.FromMemberInfo(member); AddColumn(column); return(this); }
public void ColumnMigratorInfo_nullable_string() { var member = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.NullableName)); var memberInfo = ColumnMigratorInfo.FromMemberInfo(member); Assert.IsNotNull(memberInfo); Assert.AreEqual("NullableName", memberInfo.ColumnName); Assert.IsTrue(memberInfo.AllowNull); Assert.IsFalse(memberInfo.IsPrimaryKey); Assert.IsFalse(memberInfo.IsAutoIncrement); }
protected virtual string formatColumn(ColumnMigratorInfo column) { return($"{databaseType.EscapeSqlIdentifier(column.ColumnName)} {formatColumnDataTypeString(column.Type, column.DbTypeParameter)}"); }