0
첫 번째, 내 나쁜 영어에 미안 해요 :).목록으로 한 개체를 표시하는 방법
내 개체에는 String 유형의 변수 하나와 다른 역할을 가진 하나의 selectListItem이 있습니다. 나는 각 드롭 다운리스트에서 자신의 역할을 사용자 이름 사용자 이름을 표시하고 싶습니다 ...
내 클래스 Modele 사용자가
: 사람들이 페이지에 연결하면using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;
namespace ASP.Models.User
{
public class User
{
[Required(ErrorMessage = "User required")]
[Display(Name = "Username")]
public String Username { get; set; }
[Display(Name = "Roles")]
public IList<SelectListItem> roles = new List<SelectListItem>();
public IList<SelectListItem> Roles
{
get { return roles; }
set { roles = value; }
}
}
}
내가 데이터베이스에 복구됩니다 사용자 이름 및 역할, 나는 하나 개의 목록 에서 CONTROLER 역할을 넣어 후 :
public ActionResult Modify()
{
Connection connection = new Connection();
connection.creationConnexion();
DbDataReader reader = connection.getBDAllPseudoRole();
List<User> users=new List<User>();
User user = null; ;
if (reader.HasRows)
{
while (reader.Read())
{
Boolean flag = false;
foreach (User userTemp in users)
{
if (userTemp.UserName.Equals(Convert.ToString(reader[0])))
{
user = userTemp;
flag = true;
}
}
if(flag==false)
user = new user();
if (reader.GetValue(1) == DBNull.Value)//if first row equals null; we dont have the roles
{
user.UserName = Convert.ToString(reader[0]);
}
else
{
user.Username = Convert.ToString(reader[0]);
SelectListItem item = new SelectListItem();
item.Text = Convert.ToString(reader[1]);
item.Value = Convert.ToString(reader[1]);
user.Roles.Add(item);
}
user.Add(user);
}
}
return View(users);
}
내보기 :
을3210드롭 다운 목록에 표시 할 오류가 하나 있는데 해결책을 찾지 못했습니다.
감사합니다, Zoners
내 견해로는 @model IEnumerable 및 @ Html.DropDownList ("roles", utilisateur.Roles)입니다. 당신의 도움을 주셔서 대단히 감사합니다 –
Zoners