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?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…