我正在尝试在我的应用程序中实现简单的成员资格。我的问题是我希望能够在当前用户的userprofile表中显示数据,但我不知道如何从数据库中选择它
我试过这个但是我收到了一个错误:
UserProfile UserP = new UserProfile();
ViewBag.Message = User.Identity.Name;
return View();
UserP = (from r in up.UserName
where up.UserName == User.Identity.Name.ToString()
select r).ToList().FirstOrDefault();
return View(UserP);
这是错误:
Error 1 Cannot implicitly convert type 'char' to 'MvcApplication5.Models.UserProfile' C:\Users\user\Desktop\MvcApplication5\MvcApplication5\Controllers\HomeController.cs 31 32 MvcApplication5
答案 0 :(得分:0)
如果我说得对(你的代码有点破,它有两个返回,所以我假设只有两段代码),试试这个:
UserP = (from r in up
where up.UserName == User.Identity.Name.ToString()
select r).FirstOrDefault();
在查询中删除up.UserName。
。也不需要ToList()P.S。对于未来:
我还建议您添加另一个名为LoweredUserName的列,并按以下方式执行检查:
where up.LoweredUserName == User.Identity.Name.ToString().ToLower()
答案 1 :(得分:0)
以下是访问UserProfile的方法。
var context = new UsersContext();
var username = User.Identity.Name;
var user = context.UserProfiles.SingleOrDefault(u => u.UserName == username);
return View(user);
有关customizing the UserProfile and accessing it read this article的更多信息。