2013-09-02 2 views
0

Je suis nouveau en mvc 4, mais obtenir des progrès. Je deviens fou avec quelque chose que je peux sélectionner un élément dans la liste de sélection dans le modèle de vue. voici mon code de contrôleur;comment sélectionner un élément dans la liste de sélection dans le modèle de vue MVC 4

ViewBag.DepartmanListesi = new SelectList(VeriTabani.UnvanDepartmanlaris, "UDepId", "Departman"); 

et dans mon modèle de vue, je suis annonce une base de données de diffirent mais dans cette liste un champ contient un identifiant du UnvanDepartmanlaris .instead de montrer l'identifiant, je veux montrer le nom de l'identifiant. mais ce que j'ai essayé n'est pas travaillé. Pouvez-vous m'aider s'il vous plaît.

J'ai cherché beaucoup de choses mais la plupart d'entre elles était sur la façon de placer la liste déroulante. Je n'ai pas pu trouver de réponse à ma question.

Merci d'avance. J'attendrai toute réponse

+0

http://msdn.microsoft.com/en-us/library/dd492553%28v=vs.100%29.aspx –

+0

J'ai vérifié cette information mais je ne suis pas intéressé par la liste déroulante. Je veux faire quelque chose comme la requête avec selectlist dans le modèle de vue. –

+0

C'est un constructeur 'SelectList'. Qu'est-ce que 'DropDownList' a à voir avec quoi que ce soit? Demandez-vous comment définir l'élément sélectionné * après * la création de la liste? –

Répondre

0

J'utilise l'approche suivante. Hope it helps:

Créer une classe d'aide (je vais avoir ici tous mes selectlists)

Public static class Helper 
{ 
public static List<SelectListItem> GetList() 
     { 
      var result = new List<SelectListItem>(); 
      var ctx = new YourContext(); 

      var items = from n in ctx.Clients 
         select new SelectListItem 
         { 
          Text = n.Client.Name, 
          Value = n.ClientID.ToString() 
         }; 

      foreach (var item in items) 
       result.Add(item); 
      return result; 
     } 
} 

Que dans votre vue:

@Html.DropDownList("GetClients", Helper.GetList()) 

Works pour moi.

+0

Merci, je vais essayer de faire un retour –

+0

c'est tellement utile et a travaillé pour moi. merci beaucoup mon ami et appréciez tellement. –

+0

@CagdasArslan si cela vous a aidé, veuillez le marquer comme une réponse. Merci :) –

3

Essayez ceci,

Contrôleur

public List<CustomerModel> GetCustomerName() 
     { 
      // Customer DropDown 
      using (dataDataContext _context = new dataDataContext()) 
      { 
       return (from c in _context.Customers 
         select new CustomerModel 
         { 
          CustomerId = c.CID, 
          customerName = c.CustomerName 
         }).ToList<CustomerModel>(); 
      } 
     } 

    [HttpGet] 
     public ActionResult CustomerInfo() 
     { 

      var List = GetCustomerName(); 
      ViewBag.CustomerNameID = new SelectList(List, "CustomerId", "customerName"); 
      return View(); 
     } 

Voir

@Html.DropDownList("CustomerId", (SelectList)ViewBag.CustomerNameID, "--Select--") 

Modèle

public class CustomerModel 
    { 
     public int CustomerId { get; set; } 

     public string customerName { get; set; } 

     public List<SelectListItem> customerNameList { get; set; } 
} 
Questions connexes