Asp.net MVC将员工添加到组中

Asp.net MVC将员工添加到组中,asp.net,asp.net-mvc,razor,Asp.net,Asp.net Mvc,Razor,我做了一个小网站,你可以在那里管理员工。有一些小组可以完成一项任务。我创建了组、任务和员工,但现在我的问题是,组一开始是空的。我制作了一个按钮,将员工添加到组中。该组有一个需要填充的员工列表 我创建了AddEmployee.cshtml,但是我得到了一个错误 <label asp-for="Employees" class="control-label"></label> <select asp-for="Emplo

我做了一个小网站,你可以在那里管理员工。有一些小组可以完成一项任务。我创建了组、任务和员工,但现在我的问题是,组一开始是空的。我制作了一个按钮,将员工添加到组中。该组有一个需要填充的员工列表

我创建了AddEmployee.cshtml,但是我得到了一个错误

<label asp-for="Employees" class="control-label"></label>
<select asp-for="Employees" class="form-control" asp-items="ViewBag.Employees"></select> 

错误CS1061“IEnumerable”不包含“Employees”的定义,并且找不到接受类型为“IEnumerable”的第一个参数的可访问扩展方法“Employees”

以下是我的控制器代码片段:

public IActionResult AddEmployee()
        {
            ViewData["Employees"] = new SelectList(_context.Employees, "Employees", "Name");
            return View();
        }

        [HttpPost]
        [ValidateAntiForgeryToken]
        public async Task<IActionResult> AddEmployee([Bind("GroupId,Name,Employees")] Group group)
        {
            if (ModelState.IsValid)
            {
                _context.Groups.Add(group);
                await _context.SaveChangesAsync();
                return RedirectToAction(nameof(Index));
            }
            ViewData["Employees"] = new SelectList(_context.Employees, "Employees", "Name", group.Employees);
            return View(group);
        }
public IActionResult AddEmployee()
{
ViewData[“Employees”]=新的选择列表(_context.Employees,“Employees”,“Name”);
返回视图();
}
[HttpPost]
[ValidateAntiForgeryToken]
公共异步任务AddEmployee([Bind(“GroupId,Name,Employees”)]Group组)
{
if(ModelState.IsValid)
{
_context.Groups.Add(组);
wait_context.SaveChangesAsync();
返回重定向到操作(名称(索引));
}
ViewData[“Employees”]=新建选择列表(_context.Employees,“Employees”,“Name”,group.Employees);
返回视图(组);
}

您确实应该停止使用ViewData/ViewBag传递数据。使用该模型,它是强类型的,将导致更少的错误。如果您发现自己需要使用ViewData,那么就假设您做得不对,需要使用Model。您能为我提供一个使用ViewData或Model的解决方案吗?或者告诉我问题出在哪里?切换到使用模型。消除ViewBag/ViewData。您可能会在这个过程中解决您的问题。如前所述,您应该使用该模型,但如果您坚持使用ViewData,请参阅这是否回答了您的问题?