public override InternalPropertyBuilder Apply(InternalPropertyBuilder propertyBuilder, DatabaseGeneratedAttribute attribute, MemberInfo clrMember) { MySqlValueGenerationStrategy?valueGenerationStrategy = null; ValueGenerated valueGenerated = ValueGenerated.Never; if (attribute.DatabaseGeneratedOption == DatabaseGeneratedOption.Computed) { valueGenerated = ValueGenerated.OnAddOrUpdate; valueGenerationStrategy = MySqlValueGenerationStrategy.ComputedColumn; } else if (attribute.DatabaseGeneratedOption == DatabaseGeneratedOption.Identity) { valueGenerated = ValueGenerated.OnAdd; valueGenerationStrategy = MySqlValueGenerationStrategy.IdentityColumn; } propertyBuilder.ValueGenerated(valueGenerated, ConfigurationSource.Convention); propertyBuilder.MySql(ConfigurationSource.DataAnnotation).ValueGenerationStrategy(valueGenerationStrategy); return(base.Apply(propertyBuilder, attribute, clrMember)); }