2010-05-18 4 views
1

Je veux afficher la valeur sélectionnée dans la liste déroulante. la valeur provient de la base de données. par exemple supposons que nous voulons mettre à jour le profil d'utilisateur alors la valeur pour le genre qui est précédemment fournie par l'utilisateur devrait s'afficher comme valeur sélectionnée. le code que je l'ai utilisé pour afficher estcomment afficher la valeur sélectionnée dans la liste déroulante dans asp.net mvc?

<% string val = Convert.ToString(Model.gender); 
    ViewData["gen"] = val; 
%> 
<%= Html.DropDownList("genderList", ViewData["gen"] as SelectList) %> 

mais sa ne pas montrer la valeur des vidéotex database.but obtenir la valeur de base de données, mais il ne montre pas sur la liste déroulante. merci d'avance.

Répondre

0

Vous pouvez vérifier this de blog qui montre comment utilisez un DropDownList dans ASP.NET MVC.

0

Ce:

string val = Convert.ToString(Model.gender); 
ViewData["gen"] = val; 

est pas compatible avec ceci:

ViewData["gen"] as SelectList 

ViewData["gen"] contient une valeur de chaîne au lieu de SelectList et lorsque vous essayez de le jeter, vous obtenez nulle et le menu déroulant ne contient aucune valeur.

Vous aurez besoin d'un tableau pour remplir la liste déroulante. La première étape consiste à avoir un tableau fortement typé d'un objet. Supposons que vous ayez la classe suivante définie:

public class Gender 
{ 
    public int Id { get; set; } 
    public int Text { get; set; } 
} 

Dans votre action du contrôleur:

public ActionResult Index() 
{ 
    var genderList = new[] 
    { 
     new Gender{ Id = 1, Text = "Male" }, 
     new Gender{ Id = 2, Text = "Female" }, 
    }; // This should come from the database 
    ViewData["genderList"] = new SelectList(genderList, "Id", "Text"); 
    return View(); 
} 

et dans la vue:

<%= Html.DropDownList("gen", ViewData["genderList"] as SelectList) %> 
+0

Je ne comprends pas, comment obtenir la valeur de la base de données qui est déjà stockée. Je veux montrer cette valeur en haut. – Renu123

Questions connexes