* CORRECTION
调用我的视图从用户表填充列表时会出现问题。
传入字典的模型项的类型为'System.Collections.Generic.List`1 [Mike.Models.User]',但此字典需要类型为'Mike.Models.User的模型项”。
这是我的控制器动作:
public ActionResult Registration(Mike.Models.User user)
{
if (ModelState.IsValid)
{
using (var db = new UserContext())
{
var crypto = new SimpleCrypto.PBKDF2();
var encrypPass = crypto.Compute(user.password);
var sysUser = db.Users.Create();
sysUser.LastName = user.LastName;
sysUser.FirstName = user.FirstName;
sysUser.Email = user.Email;
sysUser.password = encrypPass;
sysUser.passwordSalt = crypto.Salt;
sysUser.UserID = user.UserID;
db.Users.Add(sysUser);
db.SaveChanges();
return RedirectToAction("Index", "Home");
}
}
return View(user);
}
有人可以帮助我....互联网上有类似问题的回复,但我相信我的独特......我已经搜索了几周无济于事。
提前致谢,
Renior
这是我简单的控制器动作......
public ActionResult Index()
{
return View(db.Users.ToList());
}
和我的剃刀语法。
@model IEnumerable
我试图填充用户表列表的视图..
答案 0 :(得分:2)
以面值来衡量 - 你的并不是唯一的。您的问题是您将一组用户传递给期望用户的控制器操作。
您需要发布您的HTML,但它可能类似于@model List用户或其他东西,而不是单个用户。
如果您的模型代表单个用户,则将其传递给控制器。如果相反,请做相反的事,
如果要将列表传递给控制器使用列表用户
修改强>
制作你的剃刀语法
@model Mike.Models.User
答案 1 :(得分:2)
在您的模型声明顶部的“注册”视图中,而不是:
@model List<Mike.Models.User>
你需要:
@model Mike.Models.User
您可能使用强类型脚手架功能来生成视图,但是您选择了一个列表选项而不是详细信息...