我试图通过User.Identity获取当前用户ID但是徒劳无功,我发现This post
这引导我做了以下事情:Guid userGuid = (Guid)Membership.GetUser().ProviderUserKey;
我经历了与This Post中相同的错误!但是我提供的解决方案并不适用。我有一个帐户模型
public class Account
{
public int ID { get; set; }
......
}
我想将创建的结算信息链接到当前登录的用户 所以我尝试按照建议执行以下操作
if (User.Identity.IsAuthenticated)
{
Guid userGuid = (Guid)Membership.GetUser().ProviderUserKey;
billinginfo.User = db.AccountSet
.Where(x => x.ID == userGuid).FirstOrDefault();
}
我有明显的错误:
运算符'=='不能应用于'int'和'System.Guid'类型的操作数 我无法从This Post得到答案 我试图将Guid转换为int但由于转换最多为64位而生成了错误的id
所以我希望获得当前登录的用户并能够访问他的所有属性
感谢任何帮助!
答案 0 :(得分:1)
您无法将整数与GUID进行比较。这没有意义。为了关联这两个表,您必须在两个表中使用相同的数据类型列。