# 7.1.2 Creando el modelo ClienteCategoría

Vamos a agregar nuestra clase ClienteCategoria para registrar las categorías de productos que maneja cada cliente. Para que funcionen las opciones de expand de OData voy a agregar un objeto de la tabla **Cliente** y otro de la tabla **Categoria**

{% code title="ClienteCategoria.cs" %}

```csharp
public class ClienteCategoria
{
        /// <summary>
        /// Id 
        /// </summary>
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public int Id { get; set; }

        /// <summary>
        /// Id del cliente
        /// </summary>        
        public int ClienteId { get; set; }

        /// <summary>
        /// Datos del cliente
        /// </summary>
        public Cliente Cliente { get; set; }

        /// <summary>
        /// Id de la categoria
        /// </summary>
        public int CategoriaId { get; set; }
        
        /// <summary>
        /// Datos de la Categoría
        /// </summary>
        public Categoria Categoria { get; set; }
}
```

{% endcode %}

En nuestro modelo **Categoria.cs** vamos a agregar un arreglo de **ClientesCategorias** para que a partir de una categoría se puedan mostrar sus clientes

{% code title="Categoria.cs" %}

```csharp
[Display(Name = "Categoría")]
public class Categoria
{
    /// <summary>
    /// Crea una nueva categoría <see cref="T:CaducaRest.Models.Categoria"/> class.
    /// </summary>
    public Categoria() => ClientesCategorias = new Collection<ClienteCategoria>();
    
    /// <summary>
    /// Obtiene los clientes categorías
    /// </summary>
    /// <value>Clientes categorias.</value>
    public virtual ICollection<ClienteCategoria> ClientesCategorias { get; set; }
}
```

{% endcode %}

Cambiamos también nuestro modelo Cliente la lista de ClientesCategorias para que se puedan realizar las consultas de OData&#x20;

{% code title="Cliente.cs" %}

```csharp
public class Cliente
{
    /// <summary>
    /// Constructor  <see cref="T:CaducaRest.Models.Cliente"/> class.
    /// </summary>
    public Cliente() => ClientesCategorias = new Collection<ClienteCategoria>();
    
    /// <summary>
    /// Para mostrar las categorias de los clientes
    /// </summary>
    public virtual ICollection<ClienteCategoria> ClientesCategorias { get; set; }
}
```

{% endcode %}
