问问题
80 次
1 回答
1
首先,您应该选择以下方式之一:
1) 将登录信息和用户信息保存在单独的表中,并让 SimpleMembership(SM) 执行其默认工作。
2) 使用现有表存储用户信息并告诉 SM 哪个表用于。
方法一:
要处理这种方法,您所需要的只是手动创建用户(我认为就像您所做的那样)并在负责创建客户的操作方法中添加额外的一行:
[HttpPost]
public ActionResult Create(Customer model)
{
if (ModelState.IsValid)
{
db.Customers.Add(model);
try
{
db.SaveChanges();
// here it is ...
WebSecurity.CreateUserAndAccount(model.Phone, model.Password);
}
catch
{
insertError = true;
}
// .. Other codes ...
}
现在,您的客户可以使用他们的电话号码简单地登录该网站。作为用户名和密码。
要检索与当前登录到站点的特定用户相关的项目,只需使用以下查询:
public ActionResult Index()
{
return View(db.Mains.Where(m => m.AccountNumber == User.Identity.Name)
.ToList());
}
如果您还需要方法二,请告诉我更新我的答案并将其放在这里
于 2013-08-14T07:11:02.367 回答