Я новичок в mvc. Мне нужно использовать dropdownlist на моем веб-сайте, который имеет значение как emp_id и текст как user_id. Проблема в том, что таблица - это другая база данных, и мне нужно вставить emp_id в мою базу данных для действия create() моего элемента управления. Я могу перечислить значения с DropDownList, но как я могу вставить значение в моей model.I было попробовать много остроумия dropdoenlistfor, но я не могу найти выход, кроме «Нулевое значение ИСКЛЮЧЕНИЯ»Невозможно заполнить выпадающий список с помощью viewdata
зрения
@Html.DropDownList("SelectedItem", (IEnumerable<SelectListItem>)ViewData["employees"]) @* this works [email protected]*
@Html.DropDownListFor(model => model.empid,new SelectList((IEnumerable<SelectListItem>)ViewData["employees"], "Value","Text", Model.empid), "Select Employee")
контроллер
public ActionResult Create()
{
BussinessLayer.Utils utobj = new BussinessLayer.Utils();
ViewData["employees"] = utobj.getEmployees();
return View();
}
класс
public List<SelectListItem> getEmployees()
{
DBSet DB = new DBSet();
SqlCommand cmd = new SqlCommand("select EmpID,User_ID from User_M");
DataTable dt = DB.SelectFrom("ipaddress","sqlserver", cmd);
List<employee> emplist = new List<employee>();
employee emp;
if (dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
emp=new employee();
emp.empid = dt.Rows[i][0].ToString();
emp.User_ID = dt.Rows[i][1].ToString();
emplist.Add(emp);
}
}
List<SelectListItem> items = new List<SelectListItem>();
foreach (employee s in emplist) items.Add(new SelectListItem { Text = s.User_ID, Value =s.empid });
return items;
}
вид сильно типизированных с моделью «пользователи» мне нужно присвоить значение для EmpId из каждого «пользователей» –
Вы должны показать вашей модели и метода POST для 'Create()'. И почему вы создаете новый 'SelecList' в представлении, когда' ViewData ["employees"] 'уже является' SelectList'? –