7.1.5 Configurar el servicio OData y llaves foráneas

En nuestra misma clase startup en el método ConfigureServices agregamos los servicios OData

Startup.cs
public void ConfigureServices(IServiceCollection services)
{
    services.AddOData();

Creamos nuestras llaves foráneas e índices

ClienteCategoriaConfiguration.cs
public class ClienteCategoriaConfiguration 
                : IEntityTypeConfiguration<ClientesCategorias>
{
    /// <summary>
    /// LLaves e índices para guardar las categorías por cliente
    /// </summary>
    /// <param name="builder"></param>
    public void Configure(EntityTypeBuilder<ClientesCategorias> builder)
    {
        builder.HasOne(c => c.Categoria)
                    .WithMany(cc=>cc.ClienteCategoria)
                    .OnDelete(DeleteBehavior.Restrict);

         builder.HasOne(e => e.Cliente)
                .WithMany(c => c.ClienteCategoria)
                .OnDelete(DeleteBehavior.Restrict);

         builder.HasIndex(e => new { e.ClienteId, e.CategoriaId })
               .HasName("UI_ClienteCategoria")
               .IsUnique();
     }
}

Last updated