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