1
在我的应用程序中,我已将我的UserId
与我数据库中的表关联。我需要这个,当我创建一个新项目时,我可以从下拉列表中选择用户名。并且'可以使用元素viewbag来做到这一点?ASP.NET MVC 3用户下拉列表
@Html.EditorFor(model => model.UserId)
我使用默认的成员资格提供这样我就可以不使用实体框架对于这个问题
编辑
EDIT 2
这是我的行动创造:
[HttpPost]
public ActionResult Create(Employe employe)
{
var users = Roles.GetUsersInRole("Admin");
SelectList list = new SelectList(users);
ViewBag.Users = list;
if (ModelState.IsValid)
{
**employe.EmployeID = users;**
db.Employes.Add(employe);
db.SaveChanges();
}
这不起作用。错误是:
无法隐式转换类型 '字符串[]' 到 '字符串'
我对Employee
public class Employee
{
[Key]
public int EmployeID { get; set; }
public Guid UserId { get; set; }
public string Name { get; set; }
[ForeignKey("UserId")]
public virtual MembershipUser User
{
get
{
return Membership.GetUser(this.Name); //Changed this to Name
}
}
}
}
视图模型:
@Html.DropDownList("Users", ViewBag.Users as SelectList);
我导致UserId
字段不是UserId
但这种000000-000000-0000000-00000
感谢....取而代之的是 “收集” 我需要一个值GetUserbyRole ()以便我可以看到只有某个角色的用户,这个方法有一些例子吗? – Mirko 2012-02-22 17:27:37
你的意思是“Roles.GetUsersInRole(”role name“)”? – anAgent 2012-02-22 18:41:03
是的......我需要试试这个代码也许在一个viewbag值 – Mirko 2012-02-22 19:28:17