Principales respuestas
Ayuda con Diseño de Modelo (tabla)

Pregunta
-
tengo que diseñar una tabla u creo que no he tenido problemas, pero ahora que mi tabla tiene que llevar un campo calcula
importe= cantidad * pmr
no se como hacer ese diseño en el modelo de mi tabla agradeceré su ayuda.
public class MREQUERIMIENTO { [Key] public int MREQUERIMIENTOID { get; set; } public int USUARIOID { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "Número de Licitacion :")] public int LICITACIONID { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "GPO :")] [StringLength(3, ErrorMessage = "Debe introducir 3 caracters. ")] public string GPO { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "GEN:")] [StringLength(3, ErrorMessage = "Debe introducir 3 caracters. ")] public string GEN { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "ESP:")] [StringLength(4, ErrorMessage = "Debe introducir 4 caracters. ")] public string ESP { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "DIF:")] [StringLength(2, ErrorMessage = "Debe introducir 2 caracters. ")] public string DIF { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "VAR:")] [StringLength(2, ErrorMessage = "Debe introducir 2 caracters. ")] public string VAR { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "DESCRIPCIÓN:")] public string DESCRIPCIONBIEN { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "UNI:")] public string UNI { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "CANT:")] public string CANT { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "TIPO:")] public string TIPO { get; set; } public string CLASE { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "PMR :")] public float PMR { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "CANTIDAD MAXIMA:")] public int MAXIMO { get; set; } [Required(ErrorMessage = "El campo {0} es requerido")] [Display(Name = "CANTIDAD MINIMA:")] public int MINIMO { get; set; } public float IMPORTE_MIN (this.MAXIMO * this.PMR) { get; set; } // aqui es donde estaria el campo calcularo muchas gracias
Horacio Xochitemol Bautista
Respuestas
-
gracias Lenadro como siemrep, el campo cant es de tipo string porque ahi guardar un dato string el campo real es MXIMO * PMR, lo intentare como me indicas.
saludos.
Horacio Xochitemol Bautista
- Marcado como respuesta Xochitemol sábado, 20 de enero de 2018 1:58
-
>>el campo cant es de tipo string porque ahi guardar un dato string el campo real es MXIMO * PMR
ahh ok
como habias puesto "cantidad" en la formula original la propiedad mas parecida que vi era CANT
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta Xochitemol sábado, 20 de enero de 2018 1:58
Todas las respuestas
-
hola
>>pero ahora que mi tabla tiene que llevar un campo calcula
por las reglas de normalizacion de las base de datos no se debe persistir ningun campo calculado
si tienes dos campos en tabla, como es el caso de la cantidad y el pmr persiste estos separados y en el model define la propiedad que realice la operacion
public class MREQUERIMIENTO { //resto propiedades [NotMapped] public double Importe { get { return this.CANT * this.PRM; } } }
la propeidad calculada no la mepas a ningun campos en la tabla se calcula en runtime
Como puede ser que el campo CANT sea un string ? deberias ser al menos int
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina -
gracias Lenadro como siemrep, el campo cant es de tipo string porque ahi guardar un dato string el campo real es MXIMO * PMR, lo intentare como me indicas.
saludos.
Horacio Xochitemol Bautista
- Marcado como respuesta Xochitemol sábado, 20 de enero de 2018 1:58
-
>>el campo cant es de tipo string porque ahi guardar un dato string el campo real es MXIMO * PMR
ahh ok
como habias puesto "cantidad" en la formula original la propiedad mas parecida que vi era CANT
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta Xochitemol sábado, 20 de enero de 2018 1:58