I've a derived context from a base class that implements dbcontext. The base class OnModelCreating is like :
protected override void OnModelCreating(ModelBuilder builder)
{
builder.Entity<TUser>(b =>
{
b.HasIndex(u => u.NormalizedUserName).HasName("UserNameIndex").IsUnique();
...
}
}
The derived class OnModelBuilder:
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.Entity...(add my customization)
}
Is it possible to drop the "IsUnique" in the derived context?
In general the mappings that create something like HasKey
, HasAlternateKey
, HasIndex
cannot be undone. But you can alter their attributes when possible.
In this particular case, you can make the index non unique by specifying false
for the optional parameter of IsUnique
method:
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.Entity<TUser>(b =>
{
b.HasIndex(u => u.NormalizedUserName).IsUnique(false);
...
}
}