In a legacy app, most string properties can't be null and need to have a default value of string.empty.
I know it's possible to do this with migrations, but I'm looking for a way to do this using the fluent configuration interface:
protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Properties<string>().Configure(c => { c.HasMaxLength(255); if (!c.ClrPropertyInfo.IsDefined(typeof (NullableAttribute), false)) { c.IsRequired(); // I want to set a default value (string.empty) here. } }
Is there any way to do this or I'm doomed to initialize all strings in the entity constructors?
Now the answer is Yes:
AddColumn("[table name]", "[column name]", c => c.Boolean(nullable: false, defaultValue: false));
2.1m questions
2.1m answers
60 comments
57.0k users