Я портирую проект с EF6 на EF7 Core и преобразую все классы с DataAnnotationtions в FluentAPI.
В проекте я широко использую пользовательские атрибуты DataAnnotatiotions. Мне нужно преобразовать:
[Required, MaxLength(Consts.DbLength.OriginName)]
[FrontendEditable]
public string OriginName { get; set; }
, где [FrontendEditable] что-то вроде:
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Enum, AllowMultiple = false, Inherited = false)]
public class FrontendEditableAttribute : Attribute
{
public FrontendEditableAttribute()
{
}
Я хотел бы преобразовать это в Fluent API в modelBuilder, например:
modelBuilder.Entity<Origin>(e =>
{
e.Property(oN => oN.OriginName).IsRequired();
e.Property(oN => oN.OriginName).HasColumnType("NVARCHAR");
e.Property(oN => oN.OriginName).HasMaxLength(50);
});
Это для того, чтобы только некоторые из полей db редактировались из FrontEnd, а некоторые были заблокированы.
Любое предложение будет оценено.