我需要一些帮助,我试图在用户登录后识别用户。除了where子句,我的代码工作正常。 你如何识别用户,我基本上试图说UserName == loginName给我的完整记录。 然后从记录中我可以拉出GarageID,任何帮助或指点非常赞赏。
+------------------------------+------------------------------+
| original table name | cloned table name |
+------------------------------+------------------------------+
| <prefix>_2015-11-17_<suffix> | <prefix>_2015-12-17_<suffix> |
| <prefix>_2015-11-18_<suffix> | <prefix>_2015-12-18_<suffix> |
| ... | ... |
| <prefix>_2015-11-30_<suffix> | <prefix>_2015-12-30_<suffix> |
+------------------------------+------------------------------+
答案 0 :(得分:0)
所以我会这样做。我会创建一个名为Session的静态类。这只是封装了对我的会话变量的访问。
public static class Session
{
public static string UserName
{
get { return (JsonWhereClause)HttpContext.Current.Session["UserName"]; }
set { HttpContext.Current.Session["UserName"] = value; }
}
}
然后当用户登录时,我会这样做。
Session.UserName = ""//User inputed username
这样就可以使你的代码成为现实。
private void FindGarageID()
{
string loginName = Session.UserName;
using (tyrescannerdatabaseEntities dbcontext = new tyrescannerdatabaseEntities())
{
garage = (from r in dbcontext.AspNetUsers
where r.UserName == loginName
select r).FirstOrDefault();
if (!garage.GarageID.Equals(null))
{
garageID = (int)garage.GarageID;
}
else
{
garageID = 1;
}
}
请注意,会话仅在网络服务器上可用,因此如果您有服务,则需要将用户名传递给服务。