Copy /// < summary >
/// Guarda los clientes
/// </ summary >
public class Cliente
{
/// < summary >
/// Id del cliente
/// </ summary >
[ Key ]
[ DatabaseGenerated ( DatabaseGeneratedOption . Identity )]
public int Id { get ; set ; }
/// < summary >
/// Clave del cliente
/// </ summary >
[ Required (ErrorMessage = "Required" )]
[ Range ( 1 , 999999 , ErrorMessage = "Range" )]
public int Clave { get ; set ; }
/// < summary >
/// RFC del cliente
/// </ summary >
[ Column (TypeName = "VARCHAR(15)" )]
public string RFC { get ; set ; }
/// < summary >
/// Razón social del cliente
/// como esta registrado ante hacienda
/// </ summary >
[ Required (ErrorMessage = "Required" )]
[ Column (TypeName = "VARCHAR(250)" )]
public string RazonSocial { get ; set ; }
/// < summary >
/// Nombre comercial del cliente
/// </ summary >
[ Required (ErrorMessage = "Required" )]
[ Column (TypeName = "VARCHAR(250)" )]
public string NombreComercial { get ; set ; }
/// < summary >
/// Dirección del cliente
/// </ summary >
[ Required (ErrorMessage = "Required" )]
[ Column (TypeName = "VARCHAR(200)" )]
public string Direccion { get ; set ; }
/// < summary >
/// Email de contacto
/// </ summary >
[ Column (TypeName = "VARCHAR(150)" )]
public string Email { get ; set ; }
/// < summary >
/// Teléfono Fijo del cliente
/// </ summary >
[ Column (TypeName = "VARCHAR(20)" )]
public string Telefono { get ; set ; }
/// < summary >
/// Número de celular del cliente
/// </ summary >
[ Column (TypeName = "VARCHAR(20)" )]
public string Celular { get ; set ; }
/// < summary >
/// Sitio Web del cliente
/// </ summary >
[ Column (TypeName = "VARCHAR(20)" )]
public string SitioWeb { get ; set ; }
/// < summary >
/// Indica si el cliente esta activo
/// </ summary >
[ Required (ErrorMessage = "Required" )]
public bool Activo { get ; set ; }
}
Copy public class CaducaContext : DbContext
{
public virtual DbSet < Cliente > Cliente { get ; set ; }
}
Si deseas seguir practicando las reglas personalizadas, puedes agregar una regla llamada RequiredWithField en el cual puedes agregar una regla para validar:
Si un campo no esta vacío otro campo es obligatorio como por ejemplo si el cliente tiene RFC, la razón social es obligatoria
Puedes ver la regla terminada en mi github. Su utilización sería así:
Copy [RequiredWithField("RazonSocial")]
public string RFC { get; set; }