I have a Model in my project as below:
public class Model
{
public int Id { get; set; }
public long FromNo { get; set; }
public long ToNo { get; set; }
public string Content { get; set; }
public long TicketNo { get; set; }
}
The migration is as below
public override void Down()
{
AlterColumn("dbo.Received", "FromNo", c => c.Long(nullable: false));
AlterColumn("dbo.Received", "ToNo", c => c.Long(nullable: false));
AlterColumn("dbo.Received", "TicketNo", c => c.Long(nullable: false));
}
public override void Up()
{
AlterColumn("dbo.Received", "FromNo", c => c.String());
AlterColumn("dbo.Received", "ToNo", c => c.String());
AlterColumn("dbo.Received", "TicketNo", c => c.String());
}
when I use Update-Database the error below is raised:
The object 'DF__Receiv__FromN__25869641' is dependent on column
'FromNo'. ALTER TABLE ALTER COLUMN FromNo failed because one or more
objects access this column.
This tables has no foreign key or what else so what is the problem?
Best Answer
You have a default constraint on your column. You need to first drop the constraint, then alter your column.
You will probably have to drop the default constraints on your other columns as well.
I've just seen Andrey's comment (I know - very late) and he is correct. So a more robust approach would be to use something like:
I know this probably doesn't help the OP but hopefully it helps anyone else that comes across this issue.