2017-09-18 2 views
0

Travailler dans Asp.net MVC 5.Définir une valeur spécifique d'un attribut dans la base de données - Asp.net MVC

J'ai un modèle/table appelée Cars. Je veux que l'utilisateur de remplir le formulaire « nouvelle voiture », qui a les propriétés suivantes:

Name, Brand Name, Sales Price, Number Available. 

Toutes ces informations sont stockées dans la base de données.

Comment définir la valeur par défaut de NumberAvailable-1 donc il n'y a pas besoin de faire un champ pour NumberAvailable dans la « nouvelle voiture » forme mais l'attribut/colonne NumberAvailable obtient la valeur définie à 1 dans la base de données avec chaque entrée?

J'ai essayé d'ajouter [DefaultValue(1)] sur l'attribut

[DefaultValue(1)] 
public byte NumberAvailable { get; set; } 

Mais cela ne fonctionne pas!

J'ai également essayé de définir la valeur par défaut de la colonne sur 1 dans la vue de conception de la table et de mettre à jour le script qui ne fonctionnait pas non plus.

+0

Faites-le dans le constructeur par défaut de la classe - 'public class Car {public Car() {NumberAvailable = 1; } octet public NumberAvailable {get; ensemble; }} ' –

+1

*** QUOI *** base de données? Chaque base de données diffère légèrement dans la façon dont ils gèrent différents aspects du stockage et de la manipulation des données - veuillez ajouter le bon ** tag ** à votre question pour éclaircir cela! –

+0

Merci Stephen ça marche. Marc J'ai mis à jour les tags de questions. Merci pour la suggestion. –

Répondre

0

Pour ASP.NET MVC5

Après le commentaire de Stephen Pour définir une valeur spécifique d'un attribut sans demander à l'utilisateur de remplir créer un constructeur dans la classe.

public Car() { NumberAvailable = 1; } 
public byte NumberAvailable { get; set; } 

La valeur de NumberAvailable est définie sur 1 chaque fois qu'une entrée est effectuée via un nouveau formulaire.

Le constructeur est créé dans la classe Modèle. La classe de modèle complète est la suivante:

public class Car 
{ 
    public int Id { get; set; } 
    [Required] 
    public String Name { get; set; } 

    [StringLength(04)] 
    public string Yom { get; set; } //Year Of Manufacture = YOM 

    [StringLength(15)] 
    public string SalePrice { get; set; } 


    public Car() { NumberAvailable = 1; } 
    public byte NumberAvailable { get; set; } 
}